у меня есть этот существующий кодRepository шаблон с общим интерфейсом и DI в EF
public interface IRepository<T>
{
void Create(T obj);
T Retrieve(string key);
}
public class ItemRepository : IRepository<Item>
{
public void Create(Item obj)
{
//codes
}
public Item Retrieve(string key)
{
//codes
}
}
я хотел бы создать общий репозиторий классов, где я должен вводить тип IRepository конструктору затем использовать свою собственную реализацию методов. У меня уже есть действующий код, но в настоящее время он ошибочен
public class Repository
{
IRepository<T> action = null;
public Repository(IRepository<T> concreteImplementation)
{
this.action = concreteImplementation;
}
public void Create(T obj)
{
action.Create(obj);
}
}
классы от EF. если для этого нет никакой работы, какой будет лучший подход?
Я практиковал DI на основе этого http://www.codeproject.com/Articles/615139/An-Absolute-Beginners-Tutorial-on-Dependency-Inver , но он не применим к Generics. в любом случае спасибо за ответ. создание отдельных репозиториев будет для меня – Blues