4

所以下面的代码应该在活动目录中移动一个对象。我看到这里发生了什么,但我不太明白。我所看到的只是旧位置和新位置。我没有看到我实际上是如何抓住物体的。我在这两个位置都有几个对象,这段代码在哪里说明要移动哪个特定对象?我看不到 LDAP + objectLocation 字符串中存在对象的位置。

DirectoryEntry eLocation = new DirectoryEntry("LDAP://" + objectLocation);
DirectoryEntry nLocation = new DirectoryEntry("LDAP://" + newLocation);
string newName = eLocation.Name;
eLocation.MoveTo(nLocation, newName);
nLocation.Close();
eLocation.Close();
4

1 回答 1

14

也许这个例子会更清楚:

DirectoryEntry theObjectToMove = new DirectoryEntry("LDAP://CN=jdoe,CN=Users,DC=acme,DC=com");
DirectoryEntry theNewParent = new DirectoryEntry("LDAP://OU=Something,DC=acme,DC=com");
theObjectToMove.MoveTo(theNewParent);

带有两个参数的重载MoveTo还为对象指定了一个新名称,我认为在您的示例中它是多余的。

于 2012-07-24T15:14:21.143 回答