C# 尝试获取下拉列表中显示的数据
我在网上尝试了很多不同的解决方案,但是我没有找到任何能够正确实现我所寻找的解决方案的解决方案 我想组合一个表的两个属性,它们是FirstName和LastName,然后我想将这些耦合的属性显示为dropdownlist,供用户选择。我也尝试过使用SelectListItem,但这只会导致错误,我无法编译 到目前为止,我的解决方案包括: 在我的控制器中:C# 尝试获取下拉列表中显示的数据,c#,asp.net-mvc,razor,html-helper,C#,Asp.net Mvc,Razor,Html Helper,我在网上尝试了很多不同的解决方案,但是我没有找到任何能够正确实现我所寻找的解决方案的解决方案 我想组合一个表的两个属性,它们是FirstName和LastName,然后我想将这些耦合的属性显示为dropdownlist,供用户选择。我也尝试过使用SelectListItem,但这只会导致错误,我无法编译 到目前为止,我的解决方案包括: 在我的控制器中: var data = from p in db.Contacts se
var data =
from p in db.Contacts
select new
{
FirstName = p.FirstName,
LastName = p.LastName
};
SelectList personList = new SelectList(data, "FirstName", "LastName");
我认为:
@Html.DropDownList("ContactName", (SelectList)ViewBag.Names)
此文件的输出是一个下拉列表,其中包含以下格式的选项:
{ FirstName = Joe, LastName = Bloggs }
任何帮助都将不胜感激。您需要将2个字段合并为一个字段
var data =
from p in db.Contacts
select new
{
Name = p.FirstName + " " + p.LastName,
Id = p.IdContact
};
SelectList personList = new SelectList(data, "Id", "Name");
使用上面的代码,您将实现所需的功能
但是,请阅读以下关于如何更好地使用下拉列表的答案:能否显示在
ViewBag.Names中设置值的代码行?
?当然,选择列表personList之后的代码行。。。。。ViewBag.Names=个人列表;