0
나는 웹 응용 프로그램 (웹 양식)에서 작업 중입니다. 앞으로 NHibernateRepositoryFactory로 EntityFrameworkRepositoryFactory를 변경할 수 있기를 바랍니다.RepositoryFactory with Ninject
IRepositoryFactory
public interface IRepositoryFactory
{
IProductRepository GetProductRepository();
}
ProductRepository
public class ProductRepository : IProductRepository
{
ExDbContext _db;
public ProductRepository(ExDbContext dbContext)
{
_db = dbContext;
}
public IList<Product> ListProductsByCategoryId(int categoryId)
{
List<Product> productsByCategoryId = _db.Products.Where(x => x.ProductCategoryId == categoryId).ToList();
return productsByCategoryId;
}
}
그리고 EntityFrameworkRepositoryFactory는 있다.
class EntityFrameworkRepositoryFactory:IRepositoryFactory
{
ExDbContext _db;
public EntityFrameworkRepositoryFactory(ExDbContext dbContext)
{
_db = dbContext;
//
// TODO: Add constructor logic here
//
}
public IProductRepository GetProductRepository()
{
return new ProductRepository(_db);
}
}
어떻게하면 쉽게 변경할 수 있습니까? 액세스 EntityFrameworkRepositoryFactory에 ninject를 사용하고 싶지만 막혔습니다. 이것에 대한 예가 있습니까?
감사합니다.
는 어디 붙어 있습니까? 쉽게 조롱당하는 한 가지 방법으로 하나의 인터페이스가 있습니다. 당신이 한 일로 당신이 요구 한 것은 가능해야합니다. –
@Atoms 쉽게 볼 수있는 몇 가지 방법을 정리했습니다. 그게 하나의 방법으로 단일 인터페이스 때문입니다. Factory 클래스를 쉽게 변경할 수있는 방법을 물었습니다. – OzanWt