私はasp.netコアを介してmvc web apiを構築しています。しかし、要求に応じてjsonボディを逆シリアル化できないことは不思議です。MVC-APIに<string>をリストする入力jsonをデシリアライズできませんでした
ターゲット・オブジェクト要求に転記JSONは次のようである
public class Status
{
public string Content {get; set;}
public string Publisher {get; set;}
public List<string> Tags {get; set;}
}
以下のように:
{
"content":"this is my baby dog",
"publisher":"someone"
"tags":[ "tag1", "tag2" ]
}
コントローラにおけるAPIメソッドである:
[HttpPost]
public IActionResult Publish([FromBody] Status status)
{
// status should be deserialized now
}
試験、ステータスは常にnullです。しかし、タグリストを持たないjsonを投稿すると、ステータスを正しくデシリアライズすることができます。だからここの失敗の理由はリストによって引き起こされたようだ。しかし、特別な設定をせずにデシリアライズすることは可能でしょうか?
どのようにJSONを投稿していますか?コードを表示できますか? – WillC
は、問題を再現するために使用できる[mcve]を提供します。投稿の無効なjsonが質問の入力ミスではないことを確認します。 – Nkosi