Unfortunately, Environment.UserDomainName
is not available for .NET Core.
However, .NET Core does provide Environment.GetEnvironmentVariable()
, which allows you to access environment variables. Since USERDOMAIN environment variable is available for Windows and HOSTNAME environment variable is available for Linux and Mac, you can call Environment.GetEnvironmentVariable("USERDOMAIN")
if its Windows, or Environment.GetEnvironmentVariable("HOSTNAME")
if its Linux/Mac.
This class could be helpful:
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");
}
}
Can get easily the username and domain:
Machine.User();
or Machine.Domain();