我如何将 PrincipalSearcher 中的 DisplayName 和 Name 仅分配给 List?

How would i assign only DisplayName and Name from PrincipalSearcher to List?

我有以下示例代码:

namespace DirectorySearcher
{
  class Program
  {
    static void Main(string[] args)
    {
        using (var context = new PrincipalContext(ContextType.Domain, "bobo.net"))
        {
            using (var searcher = new PrincipalSearcher(new UserPrincipal(context) { Enabled = true }))
            {
                List<Principal> results = new List<Principal>();
                results.AddRange(searcher.FindAll());
                //foreach (var result in searcher.FindAll())
                //{                        
                    //Console.WriteLine("displayName : " + result.DisplayName);
                    //Console.WriteLine("name : " + result.Name);
                    //Console.WriteLine();
                //}
            }
        }
        Console.WriteLine("Done");
        Console.ReadLine();
    }
  }
}

如何将 result.DisaplayName 和 result.Name 分配给结果列表?

您能否将 PrincipalSearcher 配置为仅拉回这两个值以开始

就像您可以使用 PowerShell 做的那样:

 Get-ADUser -Properties DisplayName,Name

谢谢

var list = searcher.FindAll().Select(s => new {name = s.Name, displayName = s.DisplayName});

上面创建了一个匿名对象列表,其中包含名称和显示名称。 您可以创建一个 poco class 来保存名称和显示名称而不是

用于限制响应的属性 看看 this question