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