我需要更新一些AD查询代码,并希望使用新的.NET 3.5 System.DirectoryServices.AccountManagement对象以托管方式查询AD,而不是我们当前使用LDAP的方法.
我在阅读UserPrincipal.Guid值时遇到了一个奇怪的问题.事实证明它与我们通过LDAP使用的Guids相似但不同.
起初他们看起来完全不同,但在第二次拍摄时,我看到后半部分是相同的,前半部分只是换位,即:
新(.NET 3.5)方法GUID:01234567-89ab-cdef-0123-456789abcdef上
一个(LDAP)方法GUID:67452301-ab89-efcd-0123-456789abcdef
我检查了LDAP代码,看到我们使用了SearchResult.GetDirectoryEntry().NativeGuid字段来获取Old Guid.
它有一个名为SearchResult.GetDirectoryEntry()的不同属性.Guid与我使用新的.Net 3.5类检索的GUID相同.
我的问题是,为什么它们(有点)不同,我应该使用哪种?