У меня есть интерфейс IRepository и реализация EFRepository.
Я использую инъекцию структуры карты, чтобы получить реализацию репозитория.
В данный момент EFRepository имеет конструктор без параметров, поэтому Structuremap знает, как легко получать экземпляры в EFRepository.
Теперь мне нужно изменить реализацию репозитория, чтобы она получала параметр конструктора, который содержит единицу работы.
Мой вопрос в таком случае, как я использую Structuremap для возвратаэкземпляр, который инициализирован с единицей работы?
ПРИМЕР
До сегодняшнего дня я использовал:
using(IUnitOfWork uow=UnitOfWork.current) {
IRepository rep = ObjectFactory.GetInstance<IRepository<T>>();
//repository operations that uses UnitOfWork.current that initialized above
}// here dispose of UnitOfWork.current
Теперь я хочу использовать:
using(IUnitOfWork uow=new UnitOfWork()) {
//Not sure is this is how I tell sructure map to use contractor that
//get IUnitOfWork)
IRepository rep = ObjectFactory.GetInstance<IRepository<T>>(uow);
//repository operations that uses uow that initialized above
}// here dispose of UnitOfWork