2011-12-06 181 views
3

在你直接把這個問題作爲一個副本來處理之前,值得注意的是答案沒有奏效。DirectoryEntry CommitChanges()不提交更改?

所以這裏就是我迄今爲止嘗試:

第一次嘗試使用.InvokeSet上的記錄:

adUser.InvokeSet("department", department); 
adUser.CommitChanges(); 

第二次嘗試是遵循Calling commitChanges() does nothing in Active Directory?的答案,嘗試訪問本機直接對象:

IADsTSUserEx nativeUser = (IADsTSUserEx)adUser.NativeObject; 
nativeUser.Department = department; 
adUser.CommitChanges(); 

接着用IADsUser代替。

最後,我只是想從Value屬性設置它:

adUser.Properties["department"].Value = department; 
adUser.CommitChanges(); 

所以我在虧損就在這裏。以上都沒有實際上保存更改。我有寫權限,我沒有得到任何例外。我錯過了什麼,在這裏?我想這不是我想要辯論的情況Select is Broken ...

編輯:請參閱下面的答案。

回答

2

看來問題是我的急躁情況。

adUser.Properties["department"].Value = department; 
adUser.CommitChanges(); 

做了我所需要的;在這一點上,所有AD服務器都沒有複製過更改。

+0

歡迎來到複製的世界:) – JaredPar