Active Directory commitChanges方法的工作方式与DataBase Commit事务的工作方式相同吗?

时间:2010-02-12 16:15:49

标签: active-directory

我现在没办法测试,你有可能向我确认标题问题吗?

我的意思是在ADO.NET数据库事务中,我可以在提交数据库之前更新/插入数千条记录。在使用System.Directory.Services的Active Directory中,似乎我需要为我更新/插入的每个条目(或记录)提交。

感谢。

1 个答案:

答案 0 :(得分:1)

Active Directory不是事务存储 - 因此您没有像数据库那样的事务支持。

您的观察是绝对正确的 - 使用Active Directory,您可以基于每个对象进行处理;您可以检索一个对象,对其进行操作,然后保存所有更改(或丢弃它们) - 但是您没有任何事务支持来回滚一系列操作。

如果您真的必须具备此功能,则必须编写自己的AD资源管理器(请参阅一些提示here in MSDN) - 这样您就可以将AD操作包装在TransactionScope()中并将它们滚回去。我不认为这是一项微不足道的事情,否则,有人会做到这一点......

所以你当前的观察结果是绝对正确的,没有经过多少努力,不幸的是,这不能改变。