からのGuid POSTを読んでいない:私はそれに掲示していますコントローラのアクションは、私のようにコントローラのアクションを宣言したJSON
[Route("api/person")]
[HttpPost]
public async Task<IActionResult> Person([FromBody] Guid id) { ... }
:
POST /api/person HTTP/1.1
Host: localhost:5000
Content-Type: application/json
Cache-Control: no-cache
Postman-Token: 747a5d76-398c-e1c7-b948-b276bb24976c
{
"id": "b85f75d8-e6f1-405d-90f4-530af8e060d5"
}
私の行動がヒットしているが、Guid
が、そのそれは常にGuid.Empty
値(:それは私がそれを渡している値を取得していないのIE)で受け取ります。
[FromBody]
の代わりにURLパラメータを使用するとうまくいきますが、代わりにhttp投稿の本文を使用したいと思います。 Web API documentationで説明したように
IDは、オブジェクトではなく生のJSON文字列であってはなりませんか?だから "b85f75d8-e6f1-405d 90f4-530af8e060d5"? –
はまた、文字列を渡した後、GUIDにTryParse。私は私のマシンでこれをテストするだろうが、VSがインストールされています。 –
悪い考えではありません。私は携帯ではありますが、朝にテストします。 – mariocatch