Dynamics crm CRM 2011:如何使用插件将只读表单更改为可编辑表单?

Dynamics crm CRM 2011:如何使用插件将只读表单更改为可编辑表单?,dynamics-crm,dynamics-crm-2011,Dynamics Crm,Dynamics Crm 2011,我有一个已经解决的案例表单,我想编辑这个案例表单,如何在DynamicCRM 2011插件中做到这一点 通过单击功能区上的重新激活案例按钮,可以重新打开已解决的案例 如果您尝试了以下方法: incident["statecode"] = new OptionSetValue(1); incident["statuscode"] = new OptionSetValue(0); incident["incidentstagecode"] = new OptionSetValue(1); _ser

我有一个已经解决的案例表单,我想编辑这个案例表单,如何在DynamicCRM 2011插件中做到这一点

通过单击功能区上的重新激活案例按钮,可以重新打开已解决的案例

如果您尝试了以下方法:

incident["statecode"] = new OptionSetValue(1);
incident["statuscode"] = new OptionSetValue(0);
incident["incidentstagecode"] = new OptionSetValue(1);

_serviceProxy.Update(incident);
您将得到这样一个异常,即:

"The object cannot be updated because it read-only"
更新:谢谢“克勒”的留言

要重新打开已解决的案例,您可以将以下代码添加到您的插件中:

SetStateRequest activateRequest = new SetStateRequest
    {
       EntityMoniker = new EntityReference("incident", new Guid("<Your Case GUId>")),
       State = new OptionSetValue(0),
       Status = new OptionSetValue(1)
    };
_serviceProxy.Execute(activateRequest);
SetStateRequest activateRequest=新的SetStateRequest
{
EntityMoniker=新的EntityReference(“事件”,新Guid(“”),
状态=新选项设置值(0),
状态=新选项设置值(1)
};
_serviceProxy.Execute(activateRequest);

我认为您已尝试使用Update更改状态。这是行不通的。您必须使用SetState。