linq与viewbag数据

时间:2017-10-05 17:21:25

标签: asp.net-mvc linq dropdown viewbag

控制器

ViewBag.Subdivison = new SelectList(db.Retention_Model_Predictions_DS_Manual.Select(m => m.Underwriter_Name).Distinct(), "Underwriter_Name", "Underwriter_Name"); 

查看

@Html.DropDownList("Underwriter_Name", null, "Please Select", htmlAttributes: new { @class = "form-control" })

在控制器中找到错误

  

“错误=无法评估表达式。操作不受支持。未知错误:0x80070057。”

在视图中找到错误

  

没有“IEnumerable”类型的ViewData项具有“Underwriter_Name”键。

1 个答案:

答案 0 :(得分:0)

我不认为

ViewBag.Subdivison = new SelectList(db.Retention_Model_Predictions_DS_Manual.Select(m => m.Underwriter_Name).Distinct(), "Underwriter_Name", "Underwriter_Name");

是您在控制器中收到错误的原因。

但是,您在视图中收到的错误是因为您的ViewBag名称为Subdivison,但您正在调用Underwriter_Name作为DropDownList方法中的第一个参数。

将您的查看代码更改为:

@Html.DropDownList("Subdivison", null, "Please Select", htmlAttributes: new { @class = "form-control" })

你拼错了细分...你错过了'我'。分区。

希望这有帮助。