【发布时间】:2017-01-24 12:28:43
【问题描述】:
我在 CRM 中构建了一个自定义操作,我需要通过其 WebAPI 触发该操作。自定义操作已激活,创建时我在 CRM 中没有遇到任何错误。
我尝试从 VB.NET 应用程序中调用此操作,例如:
Dim httpch As New HttpClientHandler
Dim requestUri As String = "contacts(1fcfd54a-15d3-e611-80dc-0050569ea396)/Microsoft.Dynamics.CRM.new_addnotetocontact"
httpch.Credentials = New NetworkCredential("username", "password", "domain")
Dim httpClient As New HttpClient(httpch)
httpClient.BaseAddress = New Uri(CRMWebApiUri)
httpClient.Timeout = New TimeSpan(0, 2, 0)
httpClient.DefaultRequestHeaders.Add("OData-MaxVersion", "4.0")
httpClient.DefaultRequestHeaders.Add("OData-Version", "4.0")
httpClient.DefaultRequestHeaders.Add("Prefer", "odata.include-annotations='OData.Community.Display.V1.FormattedValue'")
httpClient.DefaultRequestHeaders.Accept.Add(New MediaTypeWithQualityHeaderValue("application/json"))
Dim jsonNote As JObject = New JObject(New JProperty("NoteTitle", "'Mails have been deleted'"), New JProperty("NoteText", "This contacts SmarterMail data has been deleted due to inactivity"))
Dim postData = New StringContent(jsonNote.ToString(), Encoding.UTF8, "application/json")
Dim retrieveContactResponse As HttpResponseMessage = httpClient.PostAsync(requestUri, postData).Result
我得到的是带有消息的状态 400:
请求消息有未解析的参数。
我可以对同一站点进行其他调用并获取所有联系人作为示例
这是什么意思,我该如何解决?
【问题讨论】:
-
想要一个 C# 示例,展示如何将信息传递到正文中的操作以及如何在 CRM 2016 中创建该操作,以及处理参数
-
@l--''''''------'''''''''''' Creating your own actions in Dynamics CRM 2016
-
@l--''''''------'''''''''''' Web API Functions and Actions Sample (C#) - Dynamics CRM 2016
标签: vb.net asp.net-web-api dynamics-crm crm dynamics-crm-webapi