这是我在ASP.Net中的DropDownList:
<%: Html.DropDownListFor(x => x.CompanyUserFilterId, new SelectList(Model.CompanyUsers, "Id", "FirstName", Model.CompanyUserFilterId)) %>
我想列出DropDownList中的所有CompanyUsers并显示其FirstName和LastName属性。 CompanyUsers是一个IEnumerable属性。上面的代码工作,只显示FirstName属性。是否可以同时显示?
答案 0 :(得分:1)
您不必将完整的客户数据作为模型传递,而是必须提供包含连接字段的数据投影。
您尚未提供控制器实现,但您可能希望执行以下操作:
var data = from c in DataContext select new CustomerData() { Id = c.Id, Name = c.FirstName + " " + c.LastName };
return View(data);
..其中CustomerData是一个简单的POCO,上面有Id和Name属性。然后更改您的视图以使用IEnumerable&lt; CustomerData&gt;和您的下拉列表代码使用投影模型中的“名称”属性,而不是您最初使用的FirstName属性。
希望您可以根据自己的具体情况进行调整。
答案 1 :(得分:0)
我要补充一点,MvcContrib的下拉列表比默认列表更好,我会考虑尽可能使用该库。