2015-09-04 34 views
0

我有两个不同的SelectList(一个用于City和一个用于状态)。我必须在一个下拉列表中填入这两个SelectList,并在城市和州之间分隔。 如何用多个SelectList填充MVC Dropdownlist?用多个SelectList填充MVC下拉列表

public SelectList Cities 
{ 
    get; 
    set; 
} 
public SelectList State 
{ 
    get; 
    set; 
} 

回答

1

与其试图将2个选择列表连接在一起,为什么不把它们合并在一起?您还没有提供太多的信息,但假设你使用LINQ假设你的城市和国家之间的关系分贝...

// get the city & state data 
var cities = (from c in GetAllCities() 
      orderby c.Name 
      orderby c.State.Name 
      select new 
      { 
       cityid = c.Id, 
       cityname = c.Name, 
       state = e.State.Name 
      }).ToList(); 

// convert the data into a list of `SelectListItem` 
var items = from cs in cities.AsEnumerable() 
      select new SelectListItem 
      { 
       Value = cs.cityid.ToString(), 
       Text = string.Format("{0} {1} ({2})", cs.cityname, cs.state) 
      }; 
// create the selectlist 
return new SelectList(items , "Value", "Text");