2

当我在 SetState 和 SetStateDynamicEntity 上注册我的插件时,什么都不会执行。当我注册更新时,代码会正确执行,但更新对于我拥有的业务流程来说是不可靠的。任何想法为什么在 SetState 和 SetStateDynamicEntity 上注册 2 个步骤不会触发? 在此处输入图像描述

4

2 回答 2

0

您的注册看起来不错(我们有一些在 SetStateDynamicEntity 上运行的插件,所以我知道这是可行的,所以我可能会放弃 SetState 消息。我们也在预验证步骤而不是发布后有它,但我可以'不相信这会是一个问题)。所以这给你留下了几种可能性

  • 您没有将img_workflow步骤的状态更新为活动或非活动,导致插件永远不会被触发。更改您的插件以立即引发异常,刷新它,然后停用或激活 img_workflow。你应该看到你的异常
  • 该插件正在执行,但您没有看到它执行任何操作。同样,将您的插件更改为异常将有助于解决此问题。
  • 您在不同于您正在测试的组织或环境中注册它。

这一定是这三个问题之一。

于 2013-08-08T12:22:04.213 回答
0

尝试注册 SetStateDynamicEntity 并在上下文中检查“EntityMoniker”而不是“Target”。

if (context.InputParameters.Contains("EntityMoniker") &&
    context.InputParameters["EntityMoniker"] is EntityReference)
{
    var myEntity = (EntityReference)context.InputParameters["EntityMoniker"];
    var state = (OptionSetValue)context.InputParameters["State"];
    var status = (OptionSetValue)context.InputParameters["Status"];
 }

希望能帮助到你。

于 2014-10-06T08:00:37.423 回答