0

私はほとんどこれを行うビューを持っています:

@foreach (var object in @Model)
{
     //display wishList values
     @Html.ActionLink("Edit Object", "Edit", "Object", @object)
}

「オブジェクト」クラス:

public class Object
{
   public Object()
   {
       this.ObjectList = new List<string>();
   }

   public List<string> ObjectList {get;set;}
   public string Title {get;set;}
}

View の foreach 内では、Object.ObjectList が初期化されますが、Count == 0; です。これをコントローラーアクションに渡すと、次のようになります。

public ActionResult Edit(Object object)
{
     //do stuff
}

問題は、Edit() アクション内のオブジェクトのタイトルが正しく設定されていることですが、リストには明らかに新しいエントリ (カウント == 1) があり、これは次のとおりです。

"System.Collections.Generic.List`1[System.String]"

何か案は?

4

1 に答える 1

0

forループの代わりに明示的なループを使用foreachし、要素をインデックスで参照します

これを見てください:

http://haacked.com/archive/2008/10/23/model-binding-to-a-list.aspx

少し古いですが、まだ適用されます。

于 2013-08-04T11:07:41.690 に答える