首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >基于DistinguishedName排序时出错

基于DistinguishedName排序时出错
EN

Stack Overflow用户
提问于 2012-05-02 14:40:48
回答 2查看 293关注 0票数 0

我正在连接到LDAP,我得到的只是用户类型的类对象,当我不做任何排序时,我只想得到可分辨的名称,(我注释排序的行)结果很好,用户数是13。我可以打印它们,但它们不是按升序带来的,所以我做了基于distinguishedName的排序,当我将这些行添加到代码中时,它给了我一个空的searchResults集合。

我不知道为什么,为什么当我进行排序时,数据会消失,而当我停止排序时,数据却在那里。排序有什么问题?

代码语言:javascript
复制
DirectoryEntry entry = new DirectoryEntry(_path, username, 
DirectorySearcher mySearcher = new DirectorySearcher(entry);
mySearcher.Filter = ("(objectClass=user)");
SortOption option = new SortOption("distinguishedName", System.DirectoryServices.SortDirection.Ascending);
mySearcher.Sort = option;
DataSet ds = new DataSet();
DataTable dtUsers = new DataTable("Users");
dtUsers.Columns.Add("distinguishedName");
SearchResultCollection ss = mySearcher.FindAll();
SearchResult a = ss[0];
EN

回答 2

Stack Overflow用户

发布于 2012-05-02 15:28:19

在DataView中进行排序,如下所示:

代码语言:javascript
复制
DataTable dtUsers = new DataTable("Users");
dtUsers.Columns.Add("distinguishedName");
DataView view = dtUsers.DefaultView;
view.Sort = "distinguishedName";
票数 0
EN

Stack Overflow用户

发布于 2012-06-28 04:32:58

FWIW,我的建议通常是不对服务器端进行排序。客户端可以很容易地排序,并保持DC的排序负载。在少数情况下,您确实需要服务器进行排序,但如果您可以避免这种情况,我会这样做。你的管理员会感谢你的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10408883

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档