2012-05-04 21 views
-2

ヘルプ: コードを最初に使用してC#を使用してMVC3アプリケーションにドロップダウンリストを追加したいとします。 私は2つのテーブルの学生と大学を持っているので、私は大学の動的リストを学生の作成ビューに置く必要があります。 どのようにして私のコントローラにメソッドを追加する必要がありますか? いくつか私は助けてください ありがとうMVC3アプリケーションにドロップダウンリストを追加する方法

答えて

0

基本的な考え方は、ビューに送るクラスのプロパティとしてドロップダウンリストを渡すことです。 したがって、このような何か:

public Student 
{ 
public List<University> Universities({//get list from database in getter 

次にビュー使用中

@Html.DropDownListFor(model => model.StudentsSchool, Model.Universities) 
0

のようなものは、まずあなたのドロップダウンのためのEntityクラスを作成します。 今、あなたはの上に、このためにモデルを使用してビューをバインドする必要があります。それはあなたのCSHTMLページの次のコード

[HttpGet] 
     public ActionResult Dropdown() 
     { 
       MyViewModel model = GetDefaultModel(); 
       return View(model); 
      } 
     } 


public MyViewModel GetDefaultModel() 
     { 
      var entity = new MyViewModel();    
      entity.Status = GetMyDropdownValues();    
      return entity; 
     } 


private List<KeyValueEntity> GetMyDropdownValues() 
     { 
      return new List<KeyValueEntity> 
      { 
       new KeyValueEntity { Description = "Yes" , Value ="1" }, 
       new KeyValueEntity { Description = "No" , Value ="0"} 
      }; 
     } 

コードを書き、あなたのコントローラで値

public class KeyValueEntity 
    { 
     public string Description { get; set; } 
     public string Value { get; set; } 
    } 

public class MyViewModel 
    { 
     public List<KeyValueEntity> Status { get; set; } 
} 

のリストを返します。モデルクラスを定義したビュー

@model MyViewModel 
Following is the code for dropdown binding 

@Html.LabelForModel("Status:") 
      @Html.DropDownListFor(m => m.Status, new SelectList(Model.Status, "Value", "Description"), "-- Please Select --") 
関連する問題