CRM 2011: как узнать происхождение триггера для плагина? - PullRequest
1 голос
/ 22 августа 2011

Мне нужно узнать с помощью кода в плагине для Microsoft Dynamics CRM 2011, что было источником триггера, который запускает текущий плагин.

Пример: у меня есть плагин, который запускает сообщение об обновлении контакта. У меня также есть другой плагин, который запускает обновление пользовательского объекта. Во втором плагине я также обновляю контактную сущность. Поэтому здесь мне нужно знать, что плагин контактов запускается из-за изменения формы или из-за того, что другой плагин называется обновлением контакта.

Я читал про callerorigin для crm 4.0. Но это больше не существует для crm 2011.

Спасибо!

Ответы [ 2 ]

4 голосов
/ 22 мая 2012

Не могли бы вы проверить свойство Depth IPluginExecutionContext? Если вызывается из другого плагина, если будет 2 (или больше ...)

2 голосов
/ 22 августа 2011

Я не думаю, что есть общий способ определить происхождение, как вы хотите, но простое решение состоит в том, чтобы добавить битовое поле с именем "updatedFromPlugin" к контакту и установить его в значение true, когда вы обновляете контакт из другогоплагин.Затем в плагине контактов проверьте этот флаг.

...