使用 OData Web 服务修改 CRM 案例的状态

Modify the Status of CRM case using OData web service

在 C# 客户端中使用 "XRMServices/2011/OrganizationData.svc" oData 端点是否可以修改 CRM 案例的状态(模式术语中的事件)?

以下代码使用组织服务工作正常

            var setStateRequest = new SetStateRequest
            {
                EntityMoniker = new Microsoft.Xrm.Sdk.EntityReference("incident", caseGuid),
                State = new Microsoft.Xrm.Sdk.OptionSetValue(state),
                Status = new Microsoft.Xrm.Sdk.OptionSetValue(status)
            };
            organizationServiceProxy.Execute(setStateRequest);

是否有通过组织数据服务提供的等效功能?

如果您为 CRM 2015 SP1 或更高版本开发类似

//pseudocode
var case = {
StateCode : {Value: 1},
StatusCode : {Value: -1}
};
OrgDataService.Update("incident", incidentid, case);

将起作用,因为特殊字段(如州代码、状态代码、所有者、e.t.c。)可用于更新操作 - https://msdn.microsoft.com/en-us/library/gg309589(v=crm.7).aspx#BKMK_updateop

但是如果您为 CRM 2011/2013/2015 开发您将不得不使用 Organization.svc 和 Soap。