string machineName = System.Environment.MachineName;
这段代码对我来说无法工作,错误代码“Environment”不包含“MachineName”的定义。
我正在使用带有C#的Visual Studio 2015和通用应用程序。
请在发布答案时同时列出我需要使用的命名空间。
需要使用的命名空间:System.Environmentstring machineName = System.Environment.MachineName;
这段代码对我来说无法工作,错误代码“Environment”不包含“MachineName”的定义。
我正在使用带有C#的Visual Studio 2015和通用应用程序。
请在发布答案时同时列出我需要使用的命名空间。
需要使用的命名空间:System.Environment您需要使用NetworkInformation.GetHostNames
。
var hostNames = Windows.Networking.Connectivity.NetworkInformation.GetHostNames();
需要注意的是,这种方法将返回多个HostName
。
在我的情况下,它返回四个HostName
,其中DisplayName
为MyComputerName,MyComputerName.local以及两个IP地址。
因此,我猜它可能是安全的 -
using Windows.Networking;
using Windows.Networking.Connectivity;
var hostNames = NetworkInformation.GetHostNames();
var hostName = hostNames.FirstOrDefault(name => name.Type == HostNameType.DomainName)?.DisplayName ?? "???";