JSON オブジェクトをアクション メソッドに送信しています。すべてがクライアント側で機能し、JSON オブジェクトは正しいように見えますが、設定されている値は単純なプロパティだけです。リストのカウントは常に 0 です。
サーバーに送信される JSON オブジェクトの例を次に示します。JSON 文字列全体を警告し、以下に貼り付けました。
{"Tags":"
[{\"Id\":0,\"Title\":\"Windows 8\",\"TagType\":\"Generic\"},{\"Id\":0,\"Title\":\"Dreamweaver\",\"TagType\":\"Generic\"},{\"Id\":0,\"Title\":\"Word\",\"TagType\":\"Generic\"}]",
"CurrentPage":"5",
"ItemsPerPage":"10",
"SearchPhrase":"blaha"}
C# クラスは次のとおりです。
public class SearchParams
{
public List<Tag> Tags { get; set; }
public string ItemsPerPage { get; set; }
public string SearchPhrase { get; set; }
public string CurrentPage { get; set; }
}
public class Tag
{
public int Id { get; set; }
public string Title { get; set; }
public string TagType { get; set; }
}
アクションメソッドは次のとおりです。
public JsonResult Search(SearchParams searchParams)
{
//Stuff happens here
}
モデル バインディングは、次の 3 つの文字列プロパティに対して機能しています。
ItemsPerPage == 10
SearchPhrase == "blaha"
CurrentPage == 5
Tag.Count == 0 ????
ここには 3 つのタグ項目があるはずです :(
ここで明らかな何かが欠けていますか?
br
キム