1
我正在使用Postman來測試我編寫的PUT Web API方法,但不管我嘗試使用強類型化參數,我傳遞(MyModel)始終爲null。Web API Put - 傳遞的參數爲null
控制器動作
[Route("api/myapiname/{id}/{name}")]
[HttpPut]
public HttpResponseMessage Put(int id, string name, MyModel mymodel)
{
*//Do stuff*
}
爲MyModel類
public class MyModel
{
public MyModel() { }
private Boolean _b;
public Boolean b { set { _b = value; } get { return _b; } }
private String _comments;
public String comments { set { _comments = value; } get { return _comments; }}
}
URL
http://localhost:37781/api/myapiname/123456/laura
郵差
PUT: URL above
Headers:
Content-Type: application/json
Body:
{
"MyModel":[{"b": true,"comments": "Comments go here"}]
}
我試圖改變這一行:
public HttpResponseMessage Put(int id, string name, MyModel mymodel)
到
public HttpResponseMessage Put(int id, string name, [FromBody]MyModel mymodel)
和郵差改變內容類型到的X WWW窗體-urlencoded和我我也嘗試更改傳遞給的內容: = [{「b」:true,「評論」:「評論轉到此處」}]
我已經嘗試了StackOverflow上提供的各種解決方案,但沒有嘗試工作,有人可以幫我嗎?
感謝您的幫助。 我改變了郵遞員請求正文:{「b」:true,「評論」:「評論去這裏」}但當我使用VS調試代碼對象顯示它的屬性與默認值/ null,而不是值從郵差傳遞。 我試着添加[FromBody]屬性,這也沒有幫助。 – Laura
忽略我最後的評論,我指定了不正確的參數名稱。它現在在工作,非常感謝。 – Laura