我試圖使用System.DirectoryServices .NET Framework類庫訪問Active Directory域服務(ADDS)。System.DirectoryServices中的目錄同步參數無例外
使用LDAP協議,我想是有這個LDAP過濾辦公室設定值屬性的所有DirectoryEntries (physicalDeliveryOfficeName = *),然後我想在同步餅乾寫入文件以備將來參考就像DirectorySynchronization msdn example article
這裏所示的例子是我的代碼:
using (DirectoryEntry de = new DirectoryEntry("LDAP://myDomain.com/OU=Test,DC=myDomain,DC=com"))
{
using (var ds = new DirectorySearcher(de))
{
ds.PropertiesToLoad.Add("distinguishedName");
ds.SearchScope = SearchScope.Subtree;
ds.Filter = "(physicalDeliveryOfficeName=*)";
ds.DirectorySynchronization = new DirectorySynchronization();
SearchResultCollection searchResultCollection = ds.FindAll();
foreach (SearchResult result in searchResultCollection)
{
var dn = (string)result.Properties["distinguishedName"][0];
//do Something
}
var cookie = ds.DirectorySynchronization.GetDirectorySynchronizationCookie();
File.WriteAllBytes(@"location", cookie);
}
}
我每次運行此代碼
ds.DirectorySynchronization = new DirectorySynchronization();
我得到一個System.ArgumentNullException每當我打電話ds.FindAll()。知道每當我評論同一行代碼時,我都會得到一個沒有問題的搜索結果。
我希望我的聲音夠清楚。 出於某種原因,我覺得這個領域有一點文件。我真的找不到對此的解釋。