के लिए एक PrincipalContext की जुड़ा सर्वर जाओ मैं एक विधि CreateContextForGlobalCatalog
कि एक PrincipalServer एक वैश्विक सूची से कनेक्ट होता है देता है और कंटेनर पैरामीटर हैं।वैश्विक सूची
इस संदर्भ मैं डेटाबेस से वस्तुओं के ऊपर पाशन कर रहा हूँ ActiveDirectory में वैश्विक सूची से जानकारी प्राप्त करने के साथ:
using (PrincipalContext principalContext = CreateContextForGlobalCatalog())
{
foreach (ADAccount adAccount in accounts){
Log.Debug("Connected server: " + principalContext.ConnectedServer);
// get some information from AD here ...
}
}
Log.Debug
लाइन PrincipalContext से जुड़ा सर्वर लॉग करता है। मेरे पास केवल वर्चुअल मशीन युक्त परीक्षण सेटअप है।
मेरे समस्या: जब मैं अभी डिस्कनेक्ट उस जुड़े सर्वर (अक्षम करें नेटवर्क एडाप्टर) मैं एक अपवाद नहीं मिलता है और एक नया सर्वर लेकिन लॉग संदेश अभी भी से कनेक्ट मूल जुड़े सर्वर से पता चलता यद्यपि सर्वर नहीं है अब उपलब्ध है।
क्या किसी भी तरह से कनेक्ट की गई सर्वर संपत्ति को रीफ्रेश करने या कहीं और जानकारी प्राप्त करने का कोई तरीका है?
जाहिर है आपको अपने * चेंजट्रैकर को लागू करना है * यहां एक नज़र डालें [http://stackoverflow.com/a/2002763/4558029) और देखें कि यह – lokusking
में मदद करता है या नहीं, तो आप जांच सकते हैं कि आपका नेटवर्क कनेक्ट है या नहीं ? इस तरह: System.Net.NetworkInformation.NetworkInterface.GetIsNetworkAvailable() –
@lokusking हाहा, वास्तव में मैं परिवर्तन अधिसूचनाओं के साथ बहुत कुछ कर रहा हूं और वे वास्तव में वस्तुओं को सिंक करने की अंतर्निहित समस्या का समाधान हैं। लेकिन इस बार मैं सिर्फ नया 'कनेक्टेड सर्वर' प्राप्त करना चाहता हूं। –