1

私は、ドロップダウンリストを使って部分クラスを動的にロードしています。ドロップダウンリストは、1対多の関係の多くの側面を表します。 1人が複数のアパートに登録しています。下の図を参照してください。そのすべてがこの時点まで作業しています。しかし、私がフォームをポストバックするとき、デフォルトのモデルのバインダーで、選択したすべての値をviewmodelのリストに集める必要があります。複数のドロップダウンリストをバインドするには

public class RegistrationViewModel 
{ 
    public RegisterModel RegistrationData { get; set; } 
    public List<OccupierApartment> OccupierApartment { get; set; } 
    public SelectList ComplexesSelectList { get; set; } 
    public SelectList OccupierTypeSelectList { get; set; }   
} 

これが私の質問です:ビューでdropdownlistsのためのラムダ構文はどのようなものです:このような何かが、私が選択したすべてのdropdownlistsを取得する必要があるのに対し、そのだけで、リストの最初の項目を取得:@ Html.DropDownListFor(M => m.OccupierApartment [0] .OccupierTypeID、Model.OccupierTypeSelectList、 " - 選択 - ")

enter image description here

答えて

2

は、私はあなたが示してfollowing articleでご覧になることをお勧めします動的に要素をリストに追加するこのシナリオに適合するカスタムHTMLヘルパー。

+0

ダーリン、私は前にその記事を見てきました。問題は、テキストボックスではなく、ドロップダウンリストを使用していることです。それが私の質問の本質です。ドロップダウンリストを使用する場合、複数の選択した値をバインドする方法 – Greg

+0

Ajaxを使用してページをポストしたかったもう一つの理由は(あなたが投稿したリンクごとに)、Ajaxポストを使用しているときに動作しないコントローラにリダイレクトがあることです。 – Greg

+0

テキストボックスでもドロップダウンリストでも、同じ原則です。どちらもビューモデルのスカラープロパティにバインドされます。ドロップダウンで行う必要がある唯一の追加ステップは、選択した値を設定することです。 –

関連する問題