У меня есть сопоставитель, который берет данные из проекта репозитория. У меня есть IMenueMapper интерфейс, который передается в HomeController так:Устранить зависимость от интерфейса хранилища MVC5 с использованием структуры map
public HomeController(IMenueMapper menueMapper)
{
_menueMapper = menueMapper;
}
но сам menuemapper класс использовать IMenueMapperRepository
, и это пришло из другого проекта, и передается в через DLL
public MenueMapper(IMenueItemsRepository menueItems)
{
_menueItems = menueItems;
}
While Я могу легко решить IMenuemapper в проекте MVC, используя structmap.mvc5, я не могу разрешить репозиторий. Есть ли способ достижения DI в этом случае?
Почему вы не используете 'For' также для 'IMenueItemsRepository'? Что-то вроде этого 'For (typeof (IMenueItemsRepository)). Используйте (typeof (....))', где '...' относится к конкретной реализации 'IMenueItemsRepository'. – Christos
Вам необходимо зарегистрировать абстракцию (интерфейс и реализацию репозитория) в корне композиции. – Nkosi
@Nkosi Что вы подразумеваете под этим? –