嘿,我在我的客戶端REST應用程序更新數據有一個很大的麻煩。更新數據與Microsoft.AspNet.WebApi
我做了一個Web API控制器。
// PUT: api/Contacts/5
[ResponseType(typeof(void))]
public IHttpActionResult PutContact(Contact contact, int id)
{
if (!ModelState.IsValid)
{
return BadRequest(ModelState);
}
if (id != contact.ContactId)
{
return BadRequest();
}
_contactService.Update(contact);
return StatusCode(HttpStatusCode.NoContent);
}
而且還客戶服務方法:
public async Task<T> PutData<T>(T data, int dataId)
{
HttpResponseMessage resp = await this._client.PutAsJsonAsync(_serviceUrl + "/" + dataId, data);
resp.EnsureSuccessStatusCode();
return await resp.Content.ReadAsAsync<T>();
}
服務URL顯示在我去端點調試模式: http://localhost:21855/api/Contacts/8
但它甚至沒有去斷點,當我調試我的服務器控制器PutContact方法。
我doint錯了什麼?我需要更新數據,但我不能,因爲我的客戶端應用程序甚至不會在調試模式下進入服務器斷點! 它給了我一個錯誤響應405:不允許的方法
您能否包含代碼來顯示如何在您的服務中配置路由? I.E.對config.Routes.MapHttpRoute()的調用,假設您使用的是基於約定的路由而不是基於屬性的路由。 –
您的回覆中還返回了哪些狀態碼?有什麼異常嗎? –
它給了我一個錯誤響應405:方法不允許 – anduplats