C# 如何以编程方式在应用商店中获取当前用户的域

C# 如何以编程方式在应用商店中获取当前用户的域,c#,windows-8,windows-store-apps,C#,Windows 8,Windows Store Apps,我们开发了一个商店应用程序,当我们在domain2中部署它时,它工作正常。由于它抛出了一个错误,我们在domain2中修复了该错误,并在domain1中安装了它,但它在domain2中工作正常 我试着用 string dnsName = await Windows.System.UserProfile.UserInformation.GetDomainNameAsync(); 但它返回空字符串 例如,我有两个域,比如Dev和Test,我需要的是将其命名为Dev和Test 非常感谢您提供的任何解

我们开发了一个商店应用程序,当我们在domain2中部署它时,它工作正常。由于它抛出了一个错误,我们在domain2中修复了该错误,并在domain1中安装了它,但它在domain2中工作正常

我试着用

string dnsName = await Windows.System.UserProfile.UserInformation.GetDomainNameAsync();
但它返回空字符串

例如,我有两个域,比如Dev和Test,我需要的是将其命名为Dev和Test


非常感谢您提供的任何解决方案或代码。

为您必须使用的用户获取域名

string dnsName = Windows.System.UserProfile.UserInformation.GetDomainNameAsync();

单击此处获取,这是上的用户域名示例。

获取您必须使用的用户的域名

string dnsName = Windows.System.UserProfile.UserInformation.GetDomainNameAsync();

单击此处查看,这是上的用户域名示例。

使用此功能需要企业身份验证功能,这反过来需要Windows应用商店上的业务帐户(而不是单个开发人员帐户)。当然,所有这些都是可能做到的

我原以为如果不检查企业身份验证,结果会是空白的。文档中说这不会引发异常,但在这种情况下,我肯定会看到UnauthorizedAccessException

因此,假设这不是问题所在,请注意,如果用户关闭了通过PC设置共享该信息的功能,则在该调用中会得到一个空字符串:


使用此功能需要企业身份验证功能,而企业身份验证功能又需要Windows应用商店上的业务帐户(而不是单个开发人员帐户)。当然,所有这些都是可能做到的

我原以为如果不检查企业身份验证,结果会是空白的。文档中说这不会引发异常,但在这种情况下,我肯定会看到UnauthorizedAccessException

因此,假设这不是问题所在,请注意,如果用户关闭了通过PC设置共享该信息的功能,则在该调用中会得到一个空字符串:


感谢您的回复,我以前尝试过,但它返回给我“System.\u ComObject”。我无法获取域名。@JimO'Neil一直在等待,但返回为空字符串。谢谢回复,我以前尝试过,但它返回我“System.\u ComObject”。我无法获取域名。@JimO'Neil一直在等待,但返回为空字符串。感谢您的回复,我检查了提供的所有解决方案,但仍然没有获取域名,我在尝试提供GetDisplayNameAsync()时获取了用户名。是否有其他方法获取系统的域名。用户是否使用域帐户登录?是的,因为它获取用户的域名,请注意,它是类上的一个方法。我不是在加入域的计算机上,但我想知道中的或其他方法是否会有所帮助。感谢您的回复“var dns=Windows.Networking.Connectivity.NetworkInformation.GetHostNames();”我能够获得dns名称。非常感谢。感谢您的回复我查看了提供的所有解决方案,但仍然没有获得域名,我在尝试提供GetDisplayNameAsync()时获取用户名。是否有其他方法获取系统的域名。用户是否使用域帐户登录?是的,因为它获取用户的域名,请注意,它是类上的一个方法。我不在加入域的计算机上,但我想知道中的或其他方法是否会有所帮助。感谢您的回复,它起到了“var dns=Windows.Networking.Connectivity.NetworkInformation.GetHostNames();”的作用。我能够获得dns名称。非常感谢。