SearchResultCollection 的 GetDirectoryEntry 是否必须再次查询 ActiveDirectory? [目录服务/.net]

发布于 2024-07-27 23:05:42 字数 501 浏览 6 评论 0原文

在 .net 中使用 DirectorySearcher 的 FindAll() 方法时,SearchResultCollection 的 GetDirectoryEntry() 方法是否需要再次访问 Active Directory? 例如...

Dim src As SearchResultCollection
Dim ds As New DirectorySearcher
' code to setup DirectorySearcher


' go to Active Directory and fill collection with results
src = ds.FindAll()

'...later on in code or whatever
' does the next line of code require another trip to Active Directory?
Dim de As DirectoryEntry = src.item(0).GetDirectoryEntry()

When using the FindAll() method of the DirectorySearcher in .net, does the GetDirectoryEntry() method of the SearchResultCollection require another trip to Active Directory? e.g....

Dim src As SearchResultCollection
Dim ds As New DirectorySearcher
' code to setup DirectorySearcher


' go to Active Directory and fill collection with results
src = ds.FindAll()

'...later on in code or whatever
' does the next line of code require another trip to Active Directory?
Dim de As DirectoryEntry = src.item(0).GetDirectoryEntry()

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

爱,才寂寞 2024-08-03 23:05:43

根据文档,它将重新查询 AD 以获取目录条目。

参考

当你想要的时候使用GetDirectoryEntry
查看实时条目而不是
通过返回的条目
DirectorySearcher,或者当您需要时
调用对象上的方法
返回。

注意:
对通过 DirectorySearcher 返回的每个 SearchResult 调用 GetDirectoryEntry 可能会很慢。

According to the documentation it will requery AD to get the directory entry.

Reference

Use GetDirectoryEntry when you want to
look at the live entry instead of the
entry that was returned through
DirectorySearcher, or when you want to
invoke a method on the object that was
returned.

Note:
Calling GetDirectoryEntry on each SearchResult returned through DirectorySearcher can be slow.

神经大条 2024-08-03 23:05:43

是的,它会返回AD并获取整个DirectoryEntry对象。

如果您想避免这种情况(只要可能,您就应该这样做),请使用 PropertiesToLoad 集合在 DirectorySearcher 上指定您真正需要的属性,然后检查 这些值的 SearchResult.Properties - 这些值将随搜索返回,并且不需要再次往返 Active Directory。

马克

Yes, it will go back to AD and get the whole DirectoryEntry object.

If you want to avoid this (and you should, whenever possible), specify those properties you really need on your DirectorySearcher using the PropertiesToLoad collection, and then inspect the SearchResult.Properties for those values - those will be returned with the search and do not require yet another roundtrip to the Active Directory.

Marc

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文