2012-07-23 8 views
7

मेरे एएसपी.NET एप्लिकेशन में मुझे सक्रिय निर्देशिका से जानकारी मिलती है। मैं GUID जानकारी (उदाहरण: a28a6a34dsfdsf57d9e54f945a241) के साथ एक उपयोगकर्ता के बारे में जानकारी प्राप्त करना चाहिए, लेकिन मैं नहीं जानता कि मैं कैसे इस खोज के लिए फिल्टर सही उपयोग कर सकते हैं:/मैं सक्रिय निर्देशिका में GUID (objectGUID) पैरामीटर के साथ उपयोगकर्ता कैसे ढूंढ सकता हूं

उदाहरण के लिए

अगर मैं एक उपयोगकर्ता अंतिम नाम के लिए खोज:

DirectoryEntry Entry = new DirectoryEntry("LDAP://" + "Domain"); 

      string filter = "(&(objectClass=user)(objectCategory=person)(cn=" + txtBenutzer.Text + "*))"; 

      DirectorySearcher Searcher = new DirectorySearcher(Entry, filter); 

      var q = from s in Searcher.FindAll().OfType<SearchResult>() 
        select new 
        { 
         //GetProperty(s, "objectGUID"), 
         Benutzer = GetProperty(s, "sAMAccountName"), 
         eMail = GetProperty(s, "mail"), 
         Vorname = GetProperty(s, "givenName"), 
         Nachname = GetProperty(s, "sn"), 
         Telefon = GetProperty(s, "telephoneNumber"), 
         UserID = s.GetDirectoryEntry().NativeGuid 

        }; 

      this.myListView.DataSource = q; 
      this.myListView.DataBind(); 

अब मुझे GUID के साथ एक फ़िल्टर की आवश्यकता है जिसे मैं एडी में एकमात्र उपयोगकर्ता ढूंढ सकता हूं। इस खोज मैं एक स्ट्रिंग UserID = सत्र [ "उपयोगकर्ता id"] में है के लिए GUID। toString()

Tarasov

उत्तर

17

आप खोज करने के लिए की जरूरत नहीं है, आप यदि आप जानते हैं वस्तु को सीधे बाध्य कर सकते हैं GUID, उदाहरण के लिए

var user = new DirectoryEntry("LDAP://<GUID=119d0d80-699d-4e81-8e4e-5477e22ac1b3>"); 

(अपने वास्तविक ऑब्जेक्टिव के साथ प्रतिस्थापित करें)।

चेक इस MSDN प्रविष्टि: Using ObjectGUID to Bind to an Object

+0

ओह ठीक मैं इसे कल का परीक्षण;) मैं आपको एक अनुरोध – Tarasov

+0

ठीक है यह काम करता है दे! :) धन्यवाद – Tarasov

+0

@ तारासोव: खुशी हुई यह मदद की :) अगर यह काम करता है, तो आप भी जवाब स्वीकार कर सकते हैं। चीयर्स। –

संबंधित मुद्दे