0

查询:我的项目主页现在应该有一个域控制器列表,用于一个具有指定域 example.com 的选定森林,带有 + 号,如果我们展开 + 号,我们应该能够看到每个连接的复制服务器列表每个域的 DC。

如何使用 -

MVC3(模型中涉及哪些元素,控制器中可能包含什么,视图......等)Rajor C#

帐户管理命名空间

更加具体

为当前域中的每个 DC 显示相同的内容 (example.com)

更清楚:

example.com 是域让我说我们有 4 个域控制器 DC1 DC2 DC3 DC4

反过来 DC1 将具有复制的 DC,例如在 DC1 下 e 将具有 sub DC1 server1 sub DC1 server2

ETC

在 DC2 下,我们将有

子 DC2 服务器 1 子 DC2 服务器 2

到目前为止,我作为新手尝试过:在 MVC3 中创建了一个主页,其中页眉和页脚放置了一些粗略的数据。在正文部分,我很惊讶地为文件资源管理器之类的树视图提供了域中的域控制器列表。

提前致谢。

4

1 回答 1

0

这是你的解决方案

在搜索了这么长时间的 MSDN 文档后,我得到了您的解决方案。

我认为这是你所期待的。

ArrayList alDcs = new ArrayList();
Domain domainaa = Domain.GetCurrentDomain();
foreach (DomainController dc in domainaa.DomainControllers)
 {
    alDcs.Add(dc.Name);
 }

GetCurrentDomain 方法由运行应用程序的域凭据确定。要检索表示运行应用程序的计算机加入的域的域对象,无论与该应用程序关联的凭据如何,请改用 GetComputerDomain 方法。

通过这种方式,我可以获得所有已经相互保持信任关系的域控制器。

还有另一种方法可以让您授予具有管理员权限的用户的凭据。

  ArrayList alDomains = new ArrayList();
  Forest currentForest = Forest.GetForest(new DirectoryContext(DirectoryContextType.Forest, "contesso.local", "userame", "password"));
  DomainCollection myDomains = currentForest.Domains;
  DomainControllerCollection dccc = currentForest.RootDomain.DomainControllers;
  foreach (DomainController dc in dccc)
    {
       alDomains.Add(dc.Name);
    }

现在剩下的唯一部分是创建一个树视图,我猜你可以自己做。

希望这可以帮助你

于 2012-09-21T09:34:51.887 回答