body
a int
を渡そうとしていますが、機能しませんなぜint型のプロパティを持つクラスを作成する必要があるのですか? (それでうまくいく)
[〜#〜]機能[〜#〜]
[HttpPost]
[Route("api/UpdateMainReversed")]
public IHttpActionResult UpdateMainVerified(DataAccess.Entities.RequestMain mainValues)
{ ....}
動作しない
[HttpPost]
[Route("api/UpdateMainReversed")]
public IHttpActionResult UpdateMainVerified(int mainId)
{ ....}
Postmanを使用したテスト
http:// localhost:13497/api/UpdateMainReversed
体
{
"mainId" : 1615
}
1.Your [HttpPost]はintを期待していますが、ボディからjsonオブジェクトを渡しています。以下のようなjson文字列を渡す必要があります。パラメータ名について言及する必要はありません
2.以下のように[FromBody]を使用する必要があります
[HttpPost]
public void UpdateMainVerified([FromBody] int mainid)
{
}
このリンクはそれをよく説明しています
FromBody
属性を設定します。
Web APIがリクエストの本文から単純型を読み取るように強制するには、
[FromBody]
属性をパラメーターに追加します。
詳しくは リンク
[HttpPost]
[Route("api/UpdateMainReversed")]
public IHttpActionResult UpdateMainVerified([FromBody] int mainId)
{ ....}