मैं System.DirectoryServices.AccountManagement कक्षाओं का उपयोग करता है एक .NET 3.5 वेब अनुप्रयोग है। जब मैं कुछ उपयोगकर्ताओं की खोज करता हूं तो मुझे प्रिंसिपलऑपरेशन अपवाद मिलता है: सर्वर से एक रेफ़रल वापस कर दिया गया था। अगर मैंने अपने स्वयं के एलडीएपी कोड के साथ पुराना स्कूल तरीका किया है तो मैं रेफरल का पीछा करने में सक्षम हो सकता हूं। क्या मुझे अपना कोड फिर से लिखना है?क्या UserPrincipal.FindByIdentity() के लिए रेफ़रल पीछा करने का कोई तरीका है?
मेरे कोड इस तरह दिखता है:
using (var principalContext = new PrincipalContext(ContextType.Domain, null, adPath))
{
// Find the principal object for which you wish to enumerate group
// membership.
using (var userPrincipal = UserPrincipal.FindByIdentity(principalContext, identity))
{
if (userPrincipal != null)
{
Name = userPrincipal.DisplayName;
DistinguishedName = userPrincipal.DistinguishedName;
EmailAddress = userPrincipal.EmailAddress;
Sid = userPrincipal.Sid.Value;
}
}
}
मेरे adPath 2 में से एक मान हो सकता है। मानों में से एक एक डोमेन है जो हाल ही में शामिल हो गया था, और विभिन्न उपकरणों का उपयोग करके इसका उपयोग किया जा सकता है। मेरा मानना है कि यह एक समस्या है कि यह .NET लाइब्रेरी एलडीएपी कॉल कैसे करती है। के रूप में यह एक टिप्पणी के लिए बहुत लंबा है
शायद आप अधिक टैग जोड़ सकते हैं [.net-3.5], [विंडोज़ सर्वर 2008], या [विंडोज़ सर्वर] कम से कम। – JPBlanc