2009-08-13 19 views
0

私は、次のコードを持っている:デバッグ時配列をバインドするasp.net MVCのUpdateModel?

var obj = new 
      { 
       site = new int[]{} 
      }; 

UpdateModel(obj, new string[] {"site"}, form.ToValueProvider()); 

は今、form.ToValueProvider()オブジェクトは、各チェックボックスの名前を設定して、チェックボックスのフォームから(ポストバックに読み込まれますいくつかのサイトとそこでのサイトのキーを持っています「サイト」へ)。しかし、UpdateModel呼び出しを呼び出すと、サイトのint配列プロパティに値が設定されずバインドされません。これはUpdateModelの有効かつ可能な使用ですか?私は何かを逃しているのですか、それとも別の方法がありますか?

答えて

2

匿名オブジェクトのプロパティは読み取り専用であり、配列は不変です。これらの2つの要素は、UpdateModel()のこの特定の使用を無効にするために組み合わされます。

アクションメソッドを記述してint [] siteパラメータを設定することで、おそらく目的を達成できます。バインダーはそのパターンを認識し、メソッドに渡す配列を作成する必要があります。

関連する問題