C# 使用值创建Html.DropDownList

C# 使用值创建Html.DropDownList,c#,asp.net-mvc-3,entity-framework,razor,linq-to-entities,C#,Asp.net Mvc 3,Entity Framework,Razor,Linq To Entities,我正在尝试创建一个下拉列表,其中包含来自数据模型的值。我似乎无法在我的视野内实现这一点: @Html.DropDownList("Program Types", new SelectList(Model.Select(x => x.ProgramType.ProgramType).Distinct().OrderBy(x => x), Model.Select(x => x.ProgramType.ProgramTypeId).Distinct().OrderBy(x =&g

我正在尝试创建一个下拉列表,其中包含来自数据模型的值。我似乎无法在我的视野内实现这一点:

@Html.DropDownList("Program Types", 
new SelectList(Model.Select(x => x.ProgramType.ProgramType).Distinct().OrderBy(x => x),
Model.Select(x => x.ProgramType.ProgramTypeId).Distinct().OrderBy(x => x)))

看看这个例子:

没有比这更简单的了,你可以很容易地根据你的情况调整这个例子


希望这对你有帮助&祝你好运

你说不能让它工作是什么意思?你有例外吗?还是dropdownlist根本不出现?哇,你考虑过使用视图模型吗?如果您没有,那么,好吧,有:-)当我在视图中看到此代码时,我觉得有必要喝啤酒。您使用的
new SelectList
不正确。您正在向构造函数的
对象
参数传递多个项。这意味着要向其传递一个对象,该对象被认为是下拉列表中选定的
项。支持啤酒饮用!:)是的,使用视图模型。让生活变得轻松多了