2011-12-09 21 views
2

私はmvc3 C#でバックオフィスを実装しています。私は3つのフィールド "ComingSoon、Out、Showing"を持つドロップダウンリストであるフィールドを持っています。これらのフィールドは、どのクラスにも属していません。ヘルパークラスを作成する必要がありますか? 私は、次のドロップダウンリストを作成するC#mvc3

<% List<string> foo = new List<string>(); 
    foo.Add("Showing"); 
    foo.Add("ComingSoon);" 
    foo.Add("Out"); 

    Html.DropDownList(foo, Model.Status); %> 

ステータスを更新する必要があるDBのフィールドで試してみました。

答えて

4
Html.DropDownList("Status", 
    new SelectListItem[]{ new SelectListItem{ Text= "Showing", Value="Showing"}, 
    //same for others 
}); 
0

この方法でドロップダウンリストを作成できます。

@{   
    List<KeyValuePair<int, string>> dropdownList = 
                 new List<KeyValuePair<int, string>>(); 
       dropdownList.Add(new KeyValuePair<int, string>(0,"Showing")); 
       dropdownList.Add(new KeyValuePair<int, string>(1,"ComingSoon")); 
       dropdownList.Add(new KeyValuePair<int, string>(2,"Out")); 
       SelectList selectList = new SelectList(dropdownList, "key", "value", 0); 

} 

@Html.DropDownList("foo", selectList) 
1

あなたが結合モデルを使用しているので、私はお勧めしたい:modelbindingについては

<%: Html.DropDownListFor(model=> model.Status, 
         new List<SelectListItem>() { 
           new SelectListItem{ Text= "Showing", Value="Showing"}, 
           new SelectListItem{ Text= "ComingSoon", Value="ComingSoon"}, 
           new SelectListItem{ Text= "Out", Value="Out"} 
         }); %> 

を、常に最後に「の」がものを使用し、それは+ポスト方法容易になります名前が存在しない場合、フィードバックを受け取ります。