开发者

Does Active Directory commitChanges method work the same as a DataBase Commit transaction?

I do not have a way to test now so is it possible for you to confirm me the question of the title?

I mean in a ADO.NET database transaction, I can update/insert thousands of records before commiting to the database. In Active Directory using System.Directory.Services it seems I 开发者_如何学编程need to commit for every entry (or record) that I update/insert.

Thanks.


Active Directory is not a transactional store - so you don't have the transaction support like you have with a database.

Your observation is absolutely correct - with Active Directory, you deal on a per-object basis; you can retrieve an object, manipulate it, and then save back all the changes (or discard them) - but you don't have any transaction support to roll back a whole series of operations.

If you really must have this capability, you'd have to write your own Resource Manager for AD (see some ideas here in MSDN) - this would allow you to wrap your AD operations in a TransactionScope() and roll them back. I don't think this is a trivial undertaking, otherwise, someone would have done it already....

So your current observations are absolutely correct, and without a whole lot of effort, this cannot be changed, unfortunately.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜