单个事务中的多个操作

时间:2013-08-09 19:42:03

标签: dynamics-crm-2011

客户要求一件非常有趣的事情。他们希望有两个操作 - 在上下文中更新实体,并更新到另一个要同时执行的实体。

在SQL中,它非常简单。如果需要,可以简单地回滚整个shabang。但是,我从来没有在CRM中看到它。这有可能吗?!

请注意,我正在寻找基于支持方法的解决方案。

2 个答案:

答案 0 :(得分:3)

同时可能不是正确的单词,但只要您使用在前或后操作事件中的第一个事务上运行的插件中更新第二个实体,就可以在同一个数据库事务中执行它,只要您使用提供的IOrganizationService即可插件上下文。

抛出任何类型的异常都会“冒泡”导致整个事务被回滚(假设你没有抓住并“吃掉”异常)

答案 1 :(得分:0)

如果您正在使用早期绑定,OrganizationServiceContext可以向其添加多个对象,然后在上下文中运行“SaveChanges()”以保存一次调用中的所有更改。