1

我在使用 .NET 的 UserPrincipal.GetGroups() 方法时遇到问题。

在我域中的几乎所有系统上,我都可以调用

var groups = UserPrincipal.Current.GetGroups().ToArray()

它会返回当前用户所在的组。但是有一个 Windows 2008 R2 Enterprise Server 在执行此操作时会崩溃并显示以下消息:

服务器无法运行。名称:TESTDOMAIN.ORG

我认为该服务器以某种方式具有不同的配置,但它属于同一域。

Console.WriteLine(
  new DirectoryEntry("LDAP://RootDSE")
  .Properties["defaultNamingContext"]
  .Value
  .ToString()
);

在所有系统上显示相同:DC=GLOBAL,DC=TESTDOMAIN,DC=ORG

我在哪里可以看?可能是什么问题呢 ?如何解决?

4

1 回答 1

1

我终于找到了。问题是,服务器不知道使用什么标准网关。解决方案是转到网络选项,选择使用的 LAN 接口,编辑 IPv4 条目并设置标准网关。这样,网络将不再在网络邻域下显示为“未识别网络”,并且所有与 LDAP 相关的查询将再次起作用。

这个困扰了我好几天,所以我希望这个答案也能帮助你。

于 2012-10-31T05:38:20.063 回答