MVC 4 を使用している場合、ActionController は次の Json を受け取ります。
{
"MainId": 1,
"Actions": [
{
"Attribute1ClassA": 1,
"Attribute2ClassA": 2
},
{
"Attribute1ClassB": 3,
"Attribute2ClassB": 4
},
{
"Attribute1ClassC": 5
}
]
}
そしてコントローラー:
[HttpPost]
public ActionResult Commit(ActionsSummaryViewModel summary)
{
//DO stuff
}
クラスの宣言:
public ActionsSummaryViewModel
{
public int MainId {get;set;}
public IList<MainClass> {get;set;}
}
public class MainClass
{
}
public class ClassA : MainClass
{
public int Attribute1ClassA {get;set;}
public string Attribute2ClassA {get;set;}
}
public class ClassB : MainClass
{
public int Attribute1ClassB {get;set;}
public string Attribute2ClassB {get;set;}
}
public class ClassC : MainClass
{
public int Attribute1ClassC {get;set;}
}
では、アクション コントローラーが JSON を受け取ったときに MainClass の逆シリアル化を管理するにはどうすればよいでしょうか。アクションを呼び出すと、リスト項目が null になるためです。
ソリューションの一部が Json.NET の場合、MVC 4 コントローラーを実装するにはどうすればよいですか?
ご協力いただきありがとうございます。