- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我只是好奇:
List<string> ADUsers = new List<string>();
using (PrincipalContext principle_context = new PrincipalContext(ContextType.Domain, "MYDOMAIN"))
using (UserPrincipal user_principal = new UserPrincipal(principle_context) { Enabled = true, Name = "*", EmailAddress = "*" })
using (PrincipalSearcher user_searcher = new PrincipalSearcher(user_principal))
using (PrincipalSearchResult<Principal> results = user_searcher.FindAll())
{
foreach (Principal p in results)
{
ADUsers.Add(p.Name + " " + ((UserPrincipal)p).EmailAddress);
}
}
...有没有办法避免将我的结果转换到这里?我想做类似的事情:
using (PrincipalSearchResult<UserPrincipal> results = user_searcher.FindAll())
...这样我的搜索结果就是我需要的类型,但 FindAll 方法似乎只允许使用 <Principal>
类型。有没有更好的办法?
谢谢。
最佳答案
实际上 foreach
会为您转换枚举值,因此您可以这样做
foreach (UserPrincipal p in results)
{
ADUsers.Add(p.Name + " " + p.EmailAddress);
}
假设 Name
是在 UserPrincipal
和 Principal
中定义的。
关于c# - PrincipalSearchResult<T> 与 PrincipalSearcher FindAll,为什么 T 必须是 Principal 而不是 UserPrincipal,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26679819/
我有一个 Active Directory 搜索器,可以使用 UserPrincipal 对象获取用户的详细信息。我正在使用 System.DirectoryServices 和 System.Dir
我正在使用 ASP.Net 4.0 MVC 查询事件目录。我正在尝试获取用户组成员身份的列表并遍历它们。我有一个奇怪的问题。要获取我正在使用的组: PrincipalSearchResult g
我是事件目录的新手,我目前正在为一个项目开发一个库,以轻松管理我们的事件目录对象,如用户、资源、组等。 该库位于 .NetStandard 2.0 中,我使用的是 Principal 类 System
我想使用 JSF 创建一个登录表单,该表单还在外部上下文中创建一个新的 UserPrincipal。 当我想在外部 FacesContext 中创建新的 UserPrincipal 时,我必须做什么?
[JEE、MVC-JSP+Servlet、TomEE] 使用基于表单的声明式身份验证(容器管理)。是否可以显式设置UserPrincipal? (登录某些用户)。 我知道我可以使用 request.g
在查看托管网站时,我在我的项目中收到经典的对象引用未设置为对象的实例。在本地构建调试版本时有效。 直播 显示错误消息的代码示例: using System.DirectoryServices
在开始之前,我想说明一下,我可以使用 DirectoryServices 命名空间来执行此操作。我只想知道如何不使用 DirectoryServices 来解决我的以下问题。 我想做的是使用 Dire
我正在使用 C# 代码查询 Active Directory。我遇到的主要问题是确定帐户是否已被禁用。翻阅许多在线文章,似乎不能仅依靠属性 UserPrincipal.Enabled 来确定用户帐户是
我有一个类可以处理交换邮箱的密码更改和过期检查。我在 UserPrincipal 上检查 LastPasswordSet。 那么 TDD 呢? 我想通过编写一些测试来检查我的类(class)是否正确处
我正在尝试使用以下代码获取用户的所有Active Directory组: private static IEnumerable GetGroupNames(string userName)
通过 UserPrincipal 类,我可以设置 UserPrincipalName,因此在创建我的用户时,会填充用户登录名的第一部分: up.UserPrincipalName = "ryan.an
通过 UserPrincipal 类,我可以设置 UserPrincipalName,因此在创建我的用户时,会填充用户登录名的第一部分: up.UserPrincipalName = "ryan.an
我正在执行以下操作: How do I get the name of a file's owner in Java on OSX? 这是我的代码: private String getOwner(F
以下代码返回给定组名的 UserPricipal。但是删除组后,此代码仍然返回给我一个 UserPrincipal (已删除的)。有没有办法删除这个“缓存”? UserPrincipalLookupS
我正在尝试使用一种方法来接收用户名,如果该用户是本地管理员(不是在整个域中,只是在本地计算机上),则返回 true,否则返回 false。我试图改变在 In .NET/C# test if proce
我扩展了 UserPrincipal 类以检索我需要的一些缺失的属性: [DirectoryObjectClass("user")] [DirectoryRdnPrefix("CN")] class
这个问题在这里已经有了答案: Adding address information to active directory users (1 个回答) 关闭 5 年前。 我又被 AD 困住了。谁能给
我有一个包含很多属性的 UserPrincipal 对象,但我找不到密码过期日期的属性。 如何做到这一点? 最佳答案 这是我能想到的最简单的方法... using System.DirectorySe
我正在尝试使用 .NET System.DirectoryServices.AccountManagement 库来获取特定 Active Directory 用户的 UserPrincipal。 我
出于某种原因,GetAuthorizationGroups() 似乎需要大约 20 秒才能返回组。我正在使用这段代码: UserPrincipal user; // This takes 20 sec
我是一名优秀的程序员,十分优秀!