2014-09-23 49 views
0

我尝试删除这样的插件步:删除MS CRM 2011的插件程序步

public void RemoveStep(Guid stepId, IOrganizationService service){   
service.Execute(new SetStateRequest 
{ 
    EntityMoniker = new EntityReference("sdkmessageprocessingstep", stepId), 
    State = new OptionSetValue(pluginStateCode), 
    Status = new OptionSetValue(pluginStatusCode) 
});} 

但这个代码抛出故障异常与消息:无效的插件阶段。 有什么不对? 我该怎么做?

+0

你通过pluginStateCode和pluginStatusCode传递了什么?尝试使用状态= 1和状态= 2硬编码。 – Nzall 2014-09-23 13:10:13

+0

你好!对不起,没有说关于它,在pluginStateCode我传递1,并在pluginStatusCode我传递2.顺便发生异常。还有一点评论:我试图从我的代码中做到这一点,而不是从插件。 – IComparable 2014-09-23 13:57:59

+0

插件阶段无效意味着插件注册配置不正确。奇怪的是,你注册一个插件步骤时通常会得到这个异常,而不是注销它。你能用以下信息更新你的问题:执行步骤的实体;管道阶段;触发该步骤的事件。 – Nzall 2014-09-23 14:04:50

回答

0

这可能会帮助您:

你需要通过一个有效的状态和状态代码映射,这些都是被允许SdkMessageProcessingStep引述SDK

statecode的值:0 - 启用。 1 - 已禁用。

statuscode:1 - 启用。 2 - 已禁用。

你应该根据这个地图:

statecode 0的StatusCode 1

statecode 1和的StatusCode 2

随着你不应该有问题设置正确的值国家。

0

这个问题是因为我试图改变系统插件步骤的状态,所以这是不可能的。