试图让数据显示在下拉列表中
Trying to get data shown in a drop down list
我在网上尝试了很多不同的解决方案,但我一直无法找到任何能够正确实现我正在寻找的解决方案的解决方案。
我想合并 table 的两个属性,即 FirstName 和 LastName,然后我想将这些耦合的属性显示为下拉列表供用户选择。我也试过使用 SelectListItem,但这只会导致错误,我无法编译。
到目前为止,我的解决方案包括:
在我的控制器中:
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");
使用上面的代码,您将实现您所需要的。
但请阅读有关如何更好地使用 DropDownLists 的答案:
我在网上尝试了很多不同的解决方案,但我一直无法找到任何能够正确实现我正在寻找的解决方案的解决方案。
我想合并 table 的两个属性,即 FirstName 和 LastName,然后我想将这些耦合的属性显示为下拉列表供用户选择。我也试过使用 SelectListItem,但这只会导致错误,我无法编译。
到目前为止,我的解决方案包括:
在我的控制器中:
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");
使用上面的代码,您将实现您所需要的。
但请阅读有关如何更好地使用 DropDownLists 的答案: