【发布时间】:2017-04-15 08:12:47
【问题描述】:
控制器不应该直接使用数据库上下文,并且存储库不应该知道视图模型(表示)。
根本问题当然是避免从数据库中选择所有列,只选择那些需要的列。
这个问题一般是怎么解决的?
示例 1:控制器中的数据库上下文:
public ActionResult Products()
{
var model = from p in _context.Products
select new ProductItemViewModel
{
ProductName = p.ProductName
};
return View(model);
}
示例 2:存储库中的 ViewModel:
public ProductItemViewModel Products()
{
return from p in _context.Products
select new ProductItemViewModel
{
ProductName = p.ProductName
};
}
【问题讨论】:
标签: c# asp.net-mvc linq razor viewmodel