2012-06-19 17 views
0

我有一個編輯器模板與下拉:MVC3下拉列表中值編輯模板內部沒有填充

@Html.DropDownListFor(m => m.AdmissionState, new List<SelectListItem>() 
                { 
                 new SelectListItem() 
                  { 
                   Text = "1", 
                   Value = "1" 
                  }, 
                 new SelectListItem() 
                  { 
                   Text = "2", 
                   Value = "2" 
                  }, 
                 new SelectListItem() 
                  { 
                   Text = "3", 
                   Value = "3" 
                  },     
                }, "- Select -") 

我把它從視圖:

@Html.EditorFor(m => m.Licenses) 

在控制器我有以下代碼:

profile.Licenses.Add(new AttorneyLicenseModel() 
     { 
      AdmissionDate = "06/14/2012", 
      AdmissionState = "2", 
      AdmissionNumber = "asd", 
     }); 
     profile.Licenses.Add(new AttorneyLicenseModel() 
     { 
      AdmissionDate = "07/16/2012", 
      AdmissionState = "5", 
      AdmissionNumber = "qwe", 
     }); 

對於每個許可證,我都會看到填充了模型數據的字段,但不能顯示下拉列表n列表 - 有檢查默認值。我究竟做錯了什麼? ofcourse,隨着數值的代碼極爲運動簡化

回答

1

嘗試這樣的:

@Html.DropDownListFor(
    m => m.AdmissionState, 
    new SelectList(
     new[] 
     { 
      new { Value = "1", Text = "1" }, 
      new { Value = "2", Text = "2" }, 
      new { Value = "3", Text = "3" }, 
     }, 
     "Value", 
     "Text", 
     Model.AdmissionState 
    ), 
    "- Select -" 
) 

如果你有興趣瞭解爲什麼我的代碼工作和你的不是你能讀我昨天提供給類似如下回答問題:ASP.NET MVC DropDownListFor not selecting value from model

+0

非常感謝,這真的很有幫助 –