私は MVC3 をそれほど長く使用しておらず、これは実際の問題ではなく、私の知識の欠陥だと思います。
いくつかの基本的なプロパティと内部オブジェクトのコレクションを持つオブジェクトがあります (簡易版):
public class myClass
{
public string Name { get; set; }
public string Location { get; set; }
public List<myOtherClass> Children { get; set; }
}
public class myOtherClass
{
public string Name { get; set; }
public int Age { get; set; }
}
「myClass」オブジェクトに強く型付けされたビューがあります。名前と場所には @html.editorfor を使用し、子オブジェクトには foreach を使用します。foreach では、それぞれのプロパティに editorfor を再度使用します。
ポストバック (httppost アクション) では、myClass の名前と場所が入力されますが、子リストは空です。
すべての子要素が確実に取り込まれるようにビューを作成する方法がわかりません。
私は両方を試しました:
[httppost]
public actionresult myaction(myClass myclass)
{
}
と:
[httppost]
public actionresult myaction()
{
myClass myclass = new myClass();
TryUpdateModel(myclass);
}