कोड काफी सरल है --- मुद्दा यह है कि समूहपैथ स्ट्रिंग में एक अमान्य वर्ण है (एक '/' सटीक होना)।यह सभी ब्लॉक को क्यों पकड़ता है वास्तव में सभी
जो मैं करने की कोशिश कर रहा हूं (कम से कम एक स्टॉप गैप के रूप में) निर्देशिका एंटर्रीज़ पर छोड़ दिया गया है कि मुझे सीएन नहीं मिल सकता है --- क्यों नहीं।
हालांकि जब मैं इस कोड को चलाता हूं तो कैच ब्लॉक नहीं चलता है और मैं इसके बजाय मिलता हूं: सर्वर परिचालन नहीं है। और एक अनचाहे सिस्टम। रनटाइम .InteropServices.COMException।
कैच ब्लॉक इस अपवाद को क्यों नहीं पकड़ पाएगा।
try
{
using (DirectoryEntry groupBinding = new DirectoryEntry("LDAP://" + groupPath))
{
using (DirectorySearcher groupSearch = new DirectorySearcher(groupBinding))
{
using (DirectoryEntry groupEntry = groupSearch.FindOne().GetDirectoryEntry())
{
results.Add(string.Format("{0}", groupEntry.Properties["cn"].Value.ToString()));
}
}
}
}
catch
{
Logger.Error("User has bad roles");
}
अतिरिक्त टिप्पणियों: कोड एक कस्टम RoleProvider में वास्तव में है, और उत्सुक बात यह है कि अगर मैं संदर्भ, एक सरल WinForms अनुप्रयोग में इस प्रदाता, और एक ही आदानों पकड़ ब्लॉक के साथ यह एक ही विधि कॉल वही करता है जो ऐसा लगता है। मुझे लगता है कि यह सुझाव देता है कि COM अपवाद बनाम .NET अपवादों से संबंधित प्रस्तावित उत्तर सटीक नहीं है। हालांकि मुझे यह समझने में हानि हुई है कि WebDev सर्वर
की जांच करना? –
आपको किस लाइन पर अपवाद मिलता है? और क्या धागा? –
इसके अलावा, क्या आप अपवाद जोड़ सकते हैं? (अपवाद। टॉस्ट्रिंग()) –