我对此有点困惑,需要一些帮助。我正在使用 Entity Framework 4.1 开发一个 ASP.Net MVC 3 Web 应用程序。
我的一个 Razor 视图上有一个 DropDownList,我希望显示一个全名列表,例如
Tom Jones
Michael Jackson
James Brown
在我的控制器中,我检索用户对象列表,然后选择每个用户的名字和姓氏,并将数据传递给 SelectList。
List<User> Requesters = _userService.GetAllUsersByTypeIDOrgID(46, user.organisationID.Value).ToList();
var RequesterNames = from r in Requesters
let person = new { UserID = r.userID, FullName = new { r.firstName, r.lastName } }
orderby person.FullName ascending
select person;
viewModel.RequestersList = new SelectList(RequesterNames, "UserID", "FullName");
return View(viewModel);
在我的 Razor 视图中,我有以下内容
@Html.DropDownListFor(model => model.requesterID, Model.RequestersList, "Select", new { @class = "inpt_a"})
@Html.ValidationMessageFor(model => model.requesterID)
但是,当我运行代码时,出现以下错误
至少一个对象必须实现 IComparable。
我觉得好像我做错了,所以有人可以帮忙吗?
谢谢。