سؤال

أنا فقط أتساءل عما إذا كان أي شخص يعرف أو التفاف حول "Active Directory" إلى أن تكون قادرة على بسهولة الاستعلام في .الشبكة ؟ نوع من مثل "LINQ إلى ActiveDirectory" أو بعض SQL اللهجة ، أيأن تكون قادرة على القيام "SELECT DISTINCT(قسم) من /المستخدمين/SomeOU/AnotherOU" أو "حدد المستخدم من المجال" أو أيا كان.

بقدر ما أعرف ، فمن الممكن أن استعلام WMI IIS في "SQLesque" الطريقة, أنا فقط أتساءل إذا كان هناك شيء مماثل من الممكن لـ "Active Directory" وكذلك دون الحاجة إلى تعلم أخرى لغة الاستعلام (LDAP)?

هل كانت مفيدة؟

المحلول

LINQ إلى "Active Directory" تنفذ مخصص استعلام LINQ مزود يسمح الاستعلام عن الكائنات في "Active Directory".داخليا, الاستعلامات هي ترجمة في LDAP الفلاتر التي يتم إرسالها إلى الملقم باستخدام النظام.DirectoryServices .صافي مكتبة الإطار.

http://www.codeplex.com/LINQtoAD

العينة (من الموقع):

// NOTE: Entity type definition "User" omitted in sample - see samples in release.

var users = new DirectorySource<User>(ROOT, SearchScope.Subtree);
users.Log = Console.Out;

var res = from usr in users
          where usr.FirstName.StartsWith("B") && usr.Office == "2525"
          select new { Name = usr.FirstName + " " + usr.LastName, usr.Office, usr.LogonCount };

foreach (var u in res)
{
    Console.WriteLine(u);
    u.Office = "5252";
    u.SetPassword(pwd);
}

users.Update();
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top