我是mvc 4的新手,但取得了进步。我对如何在视图模型中的选择列表中选择项目感到疯狂。 这是我的控制器代码;
ViewBag.DepartmanListesi = new SelectList(VeriTabani.UnvanDepartmanlaris, "UDepId", "Departman");
在我的视图模型中我列出了一个不同的数据库,但是在这个列表中,一个字段包含UnvanDepartmanlaris
的id。而不是显示id,我想显示id的名称。但我所尝试的并没有奏效。能帮帮我吗。
我搜索了很多东西,但大部分是关于如何设置下拉列表。我找不到任何问题的答案。
提前谢谢你。我将等待任何回复
答案 0 :(得分:3)
试试这个,
<强>控制器强>
public List<CustomerModel> GetCustomerName()
{
// Customer DropDown
using (dataDataContext _context = new dataDataContext())
{
return (from c in _context.Customers
select new CustomerModel
{
CustomerId = c.CID,
customerName = c.CustomerName
}).ToList<CustomerModel>();
}
}
[HttpGet]
public ActionResult CustomerInfo()
{
var List = GetCustomerName();
ViewBag.CustomerNameID = new SelectList(List, "CustomerId", "customerName");
return View();
}
查看强>
@Html.DropDownList("CustomerId", (SelectList)ViewBag.CustomerNameID, "--Select--")
<强>模型强>
public class CustomerModel
{
public int CustomerId { get; set; }
public string customerName { get; set; }
public List<SelectListItem> customerNameList { get; set; }
}
答案 1 :(得分:0)
我正在使用以下方法。希望它有所帮助:
创建助手类(我在这里有所有选择列表)
Public static class Helper
{
public static List<SelectListItem> GetList()
{
var result = new List<SelectListItem>();
var ctx = new YourContext();
var items = from n in ctx.Clients
select new SelectListItem
{
Text = n.Client.Name,
Value = n.ClientID.ToString()
};
foreach (var item in items)
result.Add(item);
return result;
}
}
比你的观点:
@Html.DropDownList("GetClients", Helper.GetList())
适合我。