c#-.NET Core控制台应用程序中的Environment.UserDomainName等效项
作者:互联网
我需要确定当前登录的Windows用户的域.
我没有在.NET Core中看到Environment.UserDomainName,也找不到任何替代方法.它藏在别处吗?
这不是System.Environment in .NET Core问题的重复,因为我在.NET Core中获取Environment类没有问题.我需要它缺少的特定属性UserDomainName.
解决方法:
不幸的是,Environment.UserDomainName不适用于.NET Core.
但是,.NET Core确实提供了Environment.GetEnvironmentVariable(),它允许您访问环境变量.由于USERDOMAIN环境变量可用于Windows,而HOSTNAME环境变量可用于Linux和Mac,因此如果是Windows,则可以调用Environment.GetEnvironmentVariable(“ USERDOMAIN”),如果是Linux / Mac,则可以调用Environment.GetEnvironmentVariable(“ HOSTNAME”).
本课程可能会有所帮助:
public static class Machine
{
public static string User(){
return Environment.GetEnvironmentVariable("USERNAME") ?? Environment.GetEnvironmentVariable("USER");
}
public static string Domain(){
return Environment.GetEnvironmentVariable("USERDOMAIN") ?? Environment.GetEnvironmentVariable("HOSTNAME");
}
}
可以轻松获得用户名和域:
Machine.User();或Machine.Domain();
标签:net-core,console-application,c 来源: https://codeday.me/bug/20191026/1936747.html