c# - 为什么用 viewbag 渲染数据会报错?
问题描述
为什么 .net mvc razor 视图会出现此错误
控制器代码
ViewBag.LowStock = db.StockInformations.Where(x => x.Qty <= x.MinStockLevel);
查看代码
@{
List<StockInformation> DangerLavel = (List<StockInformation>)ViewBag.LowStock;
var count = 0;
ViewBag.Title = "Create";
}
解决方案
由于LowStock
是查询,因此您不能将其强制转换为List<StockInformation>
. 相反,您应该调用ToList()
它:
List<StockInformation> DangerLavel = ViewBag.LowStock.ToList();
该调用在应用过滤器后从中检索数据,DbQuery
在内存中生成一个列表。
推荐阅读
- android - 如何在 kotlin 的片段中传递我的自定义类型值?
- c# - 如何通过 gmap 使用纬度和经度获取地址?
- list - 如何将地图列表设置为 javafx 表视图
- excel - 使用宏对不同工作表进行列标题验证
- java - JLabel 没有更新?
- html - 如何知道使用绝对定位垂直居中需要多少像素?
- reactjs - React-JS / react-router-dom 中的路由问题
- ruby-on-rails - Rails 5 以一种形式创建同一模型的多个记录,未知属性错误
- css - 如何在 IE 11 中显示:grid div 以占据整个屏幕?(100vh 似乎不起作用)
- html - 为什么我的 HTML 表格不遵守指定的布局?