Asp.net mvc ASP.NET MVC 2编辑器模板

Asp.net mvc ASP.NET MVC 2编辑器模板,asp.net-mvc,Asp.net Mvc,以下链接解释编辑器模板: 我想知道的是,如果我有一个下拉菜单的编辑器模板,初始值是如何设置的 我有一个下拉列表,我使用Html.EditorFor(c=>c.Country,“CountryDropDown”) 但它总是默认为列表中的第一个选定项。。。有什么想法吗?我认为,您需要创建一个viewdata,或者创建一个viewmodel,以包含传递到下拉列表的选择列表。例如,在控制器操作中,您应该执行以下操作: //get your item for editing here i.e na

以下链接解释编辑器模板:

我想知道的是,如果我有一个下拉菜单的编辑器模板,初始值是如何设置的

我有一个下拉列表,我使用Html.EditorFor(c=>c.Country,“CountryDropDown”)


但它总是默认为列表中的第一个选定项。。。有什么想法吗?

我认为,您需要创建一个viewdata,或者创建一个viewmodel,以包含传递到下拉列表的选择列表。例如,在控制器操作中,您应该执行以下操作:

    //get your item for editing here i.e named itemToEdit
    //get your country collection here

      ArrayList countryList=New ArrayList;
       foreach (Country c In YourCountryCollection)
{          countryList.Add(New With {.Item = c.CountryName, .value = c.CountryID})
}
    Viewdata("CountryList")=New SelectList(countryList, "Value", "Item", itemToEdit.countryID)}
现在,在您的视图中,您不应该使用html.editorfor,而应该使用以下内容: 编辑器(“CountryLis”、“CountryDropDown”)

这将使用所选值设置dropdownlist。 希望这有帮助