0

我正在与一位将他们的插件重新注册到异步位置的客户交谈,他们声称他们的经历“奇怪的行为”。根据描述,似乎在异步插件(消息创建)中抛出异常时,该过程没有回滚。实例已创建。

这是预期的行为吗?如果是这样,可以做些什么来阻止它?

4

1 回答 1

4

异步插件不在主操作事务内部执行,这意味着当抛出异常时,主操作不会回滚。

常见的示例是在创建新帐户时在插件内创建任务:

如果插件是同步的,并且InvalidPluginExecutionException在你的插件中抛出了an,那么账户和任务都不会被创建,并且会向用户提示错误。

如果插件是异步的,并且InvalidPluginExecutionException在你的插件中抛出了 an ,则会创建帐户,不会创建任务并且不会向用户提示错误。

MSDN - 事件执行管道

于 2013-08-17T10:51:00.217 回答