我正在嘗試創建一個案例並將關聯聯繫人關聯到primarycontactId字段中。我正在使用備用密鑰來查找聯繫人,如下所示。將primarycontactid關聯到Case-Dynamics CRM Web API
POST https://xxxxx.crm.dynamics.com/api/data/v8.2/incidents HTTP/1.1
Accept: application/json
OData-MaxVersion: 4.0
OData-Version: 4.0
Content-Type: application/json; charset=utf-8
Host: xxxxxx.crm.dynamics.com
Content-Length: 161
{
"title": "case101",
"[email protected]": "https://xxxxx.crm.dynamics.com/api/data/v8.2/contacts(xxi_xxx='2533274975913147')"
}
代碼如下
using (HttpClient httpClient = new HttpClient())
{
var method2 = new HttpMethod("POST");
Uri requesturi = new Uri(string.Format("{0}/api/data/v8.2/", url));
httpClient.BaseAddress = requesturi;
httpClient.Timeout = new TimeSpan(0, 0, 4); // 10 minutes
httpClient.DefaultRequestHeaders.Accept.Clear();
httpClient.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
result = GetS2SAccessToken(url, pwd);
httpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", result);
httpClient.DefaultRequestHeaders.Add("OData-MaxVersion", "4.0");
httpClient.DefaultRequestHeaders.Add("OData-Version", "4.0");
HttpRequestMessage request = new HttpRequestMessage(method,string.Format("contacts(xxxxx_xxxx='{0}')",xxxx.ToString()));
request.Content = new StringContent(props.ToString(), Encoding.UTF8, "application/json");
HttpRequestMessage request2 = new HttpRequestMessage(method2, string.Format("incidents"));
request2.Content = new StringContent(props1.ToString(), Encoding.UTF8, "application/json");
HttpResponseMessage createResponse1;
createResponse1 = await httpClient.SendAsync(request2);
return createResponse1.Content;
}
但是我得到:
出現意外的錯誤 「」 innererror 「:{ 」消息「:」 發生意外錯誤。 「,」type「:」System.ServiceModel.FaultException。「,」type「:」System.ServiceModel.FaultException
1[[Microsoft.Xrm.Sdk.OrganizationServiceFault, Microsoft.Crm.Extensibility.OData.CrmODataServiceDataProvider.CreateEdmEntity(CrmODataExecutionContext context, String edmEntityName, EdmEntityObject entityObject, Boolean isUpsert)\r\n at Microsoft.Xrm.Sdk, Version=8.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35]]","stacktrace":" at Microsoft.Crm.Extensibility.OrganizationSdkServiceInternal.Create(Entity entity, CorrelationToken correlationToken, CallerOriginToken callerOriginToken, WebServiceType serviceType, Boolean checkAdminMode, Dictionary
2 optionalParameters)\ r \ n at Microsoft.Crm.Extensibility.OData.CrmODataExecutionContext.Create(Entity entity)\ r \吶t Microsoft.Crm.Extensibility.OData.EntityController.PostEntitySet(String entitySetName,EdmEntityObject entityObject)\ r \
有沒有人遇到過這個?
當我使用customerIderror「:{ 」code「:」「,」message「:」一個未聲明的屬性'customerid',它只在有效負載中具有屬性註釋但在有效負載中沒有找到屬性值時,我得到以下錯誤。在OData中,只有聲明的導航屬性和聲明的命名流纔可以表示爲沒有值的屬性。「,」innererror「:{ 」message「:」一個未聲明的屬性'customerid',它只在有效載荷中具有屬性註釋但沒有p –
任何關於如何將我的代碼傳遞給Jobject的建議?感謝幫助! –
嘗試使用CRM Rest構建器構建請求 –