Entity framework 用于从EF存储库创建MVCController的模式
[这篇题为:''的博客文章提供了一个很好的概述,介绍了在对基于EF dbContext的对象进行水合时如何控制加载的子对象的深度。这是一个很好的解释,它向存储库提供了Linq表达式 但博客留下了一个悬而未决的问题,通过解释控制器本身的外观,它将真正完善所涉及的工作流程 如果瘦控制器通常被认为是一件好事,并且如果EF正在成熟到主流使用的程度,那么什么模式最适合在存储库和控制器之间进行调解 乔治更喜欢这个问题: 这是完美的,但是怎么做呢 编写控制器以处理对象的所有不同方式 孩子们想被要求吗?这是创造一个 CustomerOrderController和CustomerOrderLineItemsController 注意:并且可能涉及“如何执行”-我仍然需要对要使用的语法进行概述Entity framework 用于从EF存储库创建MVCController的模式,entity-framework,asp.net-mvc-4,asp.net-mvc-controller,Entity Framework,Asp.net Mvc 4,Asp.net Mvc Controller,[这篇题为:''的博客文章提供了一个很好的概述,介绍了在对基于EF dbContext的对象进行水合时如何控制加载的子对象的深度。这是一个很好的解释,它向存储库提供了Linq表达式 但博客留下了一个悬而未决的问题,通过解释控制器本身的外观,它将真正完善所涉及的工作流程 如果瘦控制器通常被认为是一件好事,并且如果EF正在成熟到主流使用的程度,那么什么模式最适合在存储库和控制器之间进行调解 乔治更喜欢这个问题: 这是完美的,但是怎么做呢 编写控制器以处理对象的所有不同方式 孩子们想被要求吗?这是创造
mnymnythx您考虑过使用 在实现一个工作单元模式时,这篇文章比你想要的更深入了一点,这可能是一个好方法。你的标签包括MVC,所以我建议你使用它来帮助保持所有repo和对象的同步 然后,在控制器中的操作中,您可以选择需要包括哪些属性:
private UnitOfWork _unitOfWork;
public YourController()
{
_unitOfWork = new UnitOfWork();
}
//
// GET: /Market/
public ActionResult Index()
{
return View(_unit.YourRepository.Get(m => m.IsActive, null, "CollectionToLoad1,CollectionToLoad2"));
}
在本例中,我将使每个具有IsActive位的项都为true,并包括CollectionToLoad1和CollectionToLoad2
如果您不想实现一个工作单元,您可以在控制器中而不是在单元中简单地声明回购协议,并直接进行调用