CRM 2016插件启动不一致

CRM 2016插件启动不一致,crm,dynamics-crm-2016,Crm,Dynamics Crm 2016,我有一个实体,在更新消息中注册了4个插件 其中两个插件在操作前管道阶段注册,两个插件在操作后管道阶段异步注册。所有四个插件都有不同的过滤属性 一旦输入Execute方法,每个插件都会将其上下文序列化为xml文件。这是我们拥有的一个基类的功能,我没有理由相信这会失败 在测试同一记录的更新时,我得到了不一致的结果 有时只有操作前的管道插件启动,有时四个插件都启动 奇怪的是,根据我测试的记录的值,我可以判断这四个插件都启动了。但是,在许多情况下,不会生成序列化的上下文文件 我尝试过将两个异步插件都改为

我有一个实体,在更新消息中注册了4个插件

其中两个插件在操作前管道阶段注册,两个插件在操作后管道阶段异步注册。所有四个插件都有不同的过滤属性

一旦输入Execute方法,每个插件都会将其上下文序列化为xml文件。这是我们拥有的一个基类的功能,我没有理由相信这会失败

在测试同一记录的更新时,我得到了不一致的结果

有时只有操作前的管道插件启动,有时四个插件都启动

奇怪的是,根据我测试的记录的值,我可以判断这四个插件都启动了。但是,在许多情况下,不会生成序列化的上下文文件

我尝试过将两个异步插件都改为同步插件,这似乎暂时解决了这个问题。我还尝试过禁用预操作插件,只让异步启动


有人处理过类似的问题吗?

欢迎来到调试插件的地狱。作为最佳实践,我总是建议为一个事件和一个实体使用一个插件。这样,调试更简单,您可以处理更复杂的场景。在插件中,我检查目标以了解哪个字段被更新


至于不一致的结果,可能是异步步骤造成的。您是否配置了触发它们的顺序?默认情况下,它们为1。这意味着随机。

我还没有看到这个问题;需要考虑的1件事是插件将共享一些上下文项,因此取决于如何构造基类,可能会有一些缓存涉及到这个MS文章:我认为这只能通过调试插件来回答。