在更新,插件CRM 2011前与后,实体图像(Pre & Post-Entity Images on

2019-07-29 03:00发布

我希望有人为能帮助我一个问题,我一直在试图解决已经结束了一段时间。 我有一个创建插件和更新插件。 出于测试目的,我创建插件(预操作)做一个简单的计算,并把一个字段保存结果之后。

当我注册它的前操作和改变,我有我的逻辑领域我的更新插件正常工作。 但是,如果我只更改这些字段中的一个(或获得其他领域的形式脏),我得到一个错误,关键是不存在的字典。 我已经做了我的研究,看到你做的前置和后置实体图像之间的检查,检查什么领域都得到了更新,并没有。 但我感到困惑的是我做到这一点,当我需要regrister上后opertion我更新的插件,这将导致我的更新不工作了,如果我在我的代码做到底service.Update(实体)它给我无限循环的另一个错误。 在我更新的插件我已经确信,我registerd两个图像(前置和后置)。 我将不胜感激,如果有人能指点我,该怎么办前后图像之间的检查?

Answer 1:

我们需要看到你的代码。 但我能提供什么是对那里发生的简短说明。
service.Update(entity)调用插件一个更多的时间,因为它的另一个更新到您的插件中注册的法人实体。 为了避免这种无限循环,你可以看深物业。 以插件的每一个新的通话将增加该属性的值。

如果你想知道什么样的属性更新过程中发生了变化,只需要看着InputParameters 。 只会有更新的属性值。

预实体图像可用于更新信息,但不能用于创建(这是不可能有一个形象其实之前创建实体实例)。 但后实体的图像呈现在两个创建和更新消息的情形。
所以,如果你需要知道什么性质发生了变化,检查InputParameters。 您可以在预备阶段插件做到这一点。 和值,在InputParameters更新将被存储在数据库中,所以你不需要调用service.Update。



文章来源: Pre & Post-Entity Images on Update-Plugin CRM 2011