3
有人可以解释使用这种模式的好处吗?实体框架4和存储库模式
我的意思是不EF已在某种意义上的存储库?你不能只是查询容器并返回这些对象?
我看到很多关于POCO,AutoMapper,依赖注入,服务层,IoC的讨论。我只是把一堆东西混合在一起,还是都涉及到?
有人可以向我解释这个吗?
此外,这一切如何与MVC.net,ViewModels与DataModels一起使用?
感谢, 山姆
有人可以解释使用这种模式的好处吗?实体框架4和存储库模式
我的意思是不EF已在某种意义上的存储库?你不能只是查询容器并返回这些对象?
我看到很多关于POCO,AutoMapper,依赖注入,服务层,IoC的讨论。我只是把一堆东西混合在一起,还是都涉及到?
有人可以向我解释这个吗?
此外,这一切如何与MVC.net,ViewModels与DataModels一起使用?
感谢, 山姆
还有就是一堆随机问题的存在,所以我给了一堆随机答案:
IQueryable<T>
知识库,以将查询实现为具体的序列(例如ICollection<T>
)。细化请求上#3
示例控制器WITHOUT存储库:
public class ProductsController
{
public ActionResult GetProduct(int productId)
{
Product p;
using (var ctx = new MySecretContextWhichIsNowExposed())
{
p = ctx.Products.SingleOrDefault(x => x.ProductId == productId);
}
return View(p);
}
}
问题与上述:
示例控制器WITH库(和IOC):
public class ProductsController
{
private readonly IProductsRepository _repo;
public ProductsController(IProductsRepository repo)
{
_repo = repo;
}
public ActionResult GetProduct(int productId)
{
Product p = _repo.FindById(productId);
return View(p);
}
}
为什么以上更好:
MockProductRepository
,并解决该问题(可以作为内存列表实现)。
@ RPM1984 - 您可否详细说明#3:_italic_Yes,您可以查询EF容器并返回对象,但这样消费者就会知道基础持久性机制太多了,关心 - 因此存储库模式?_italic_ – Sam 2011-02-18 05:57:32