ListをWeb APIに渡そうとしていますが、null値を取得し続けます。私はリストをAPIに渡す前に文字列に変換しています。どのように私はそれを正しくバインドできますか?ListオブジェクトをC#Web APIに渡します。POST
public async Task<ReturnViewModel> ModContactsAsync(List<ContactsDTO> Contacts)
{
ReturnViewModel vm = new ReturnViewModel();
var postContactsUri = new UriBuilder(AppConfig.ServiceUrlBase);
//Converts object into a string
var jsonObject = new JavaScriptSerializer().Serialize(Contacts);
postContactsUri.Path = string.Format(POST_CONTACTS_API_PATH, jsonObject);
//Calls API
var response = await _httpClient.PostAsync(postContactsUri.ToString());
return vm;
}
POST - APIコールリストPRODはnullです
[HttpPost]
[Route("contacts/Save")]
[ResponseType(typeof(ReturnMessage))]
public async Task<IHttpActionResult> ModContacts([FromBody] List<ContactsDTO> prods)
{
try
{
await Task.Delay(10);
return Ok();
}
catch (Exception ex)
{
throw new PropertyPortalWebApiException(HttpStatusCode.InternalServerError, "Contact information does not exist.", ex);
}
}
あなたはURLに連絡先を入れようとしていますが、リクエストの本文から連絡先を読み取っていますか? – Rhumborl
'PostAsync'を次のように調整してください。' var response = await _httpClient.PostAsync(POST_CONTACTS_API_PATH、new System.Net.Http.StringContent(jsonObject、Encoding.UTF8、 "application/json")); ' – mike123
@ mike123私はまだnullを取得します。 – Apollo