2015-08-14 2 views
7

Я понимаю, что Glass Mapper v4 теперь можно использовать в сочетании с любым контейнером IoC. Но я изо всех сил пытаюсь найти пример кода, как добиться этого.Glass Mapper + Unity

Я хочу, чтобы иметь возможность регистровых стеклянные компоненты и ввести их в свои контроллеры с помощью Unity, например:

public class SearchController : Controller 
{ 
    private readonly ISitecoreContext _context; 

    //Inject via Unity 
    public SearchController(Glass.Mapper.Sc.ISitecoreContext context) 
    { 
     _context = context; 
    } 
} 

Может кто-то предоставить пример кода для того, как получить стекло соединился с Unity?

ответ

2

Вам действительно не нужен контейнер IoC для настройки базовой настройки сопоставления для стекла.

Вместо настройка регистрации для ISitecoreContext и пользовательский MVC контроллера завода переопределяет необходимую ReleaseController и GetControllerInstance методы.

My Unity немного ржавый, но что-то вроде этого (вы могли бы найти что-нибудь попроще):

IUnityContainer container = new UnityContainer() 
container.RegisterType<ISitecoreContext, SitecoreContext>(new HierarchicalLifetimeManager(), new InjectionFactory(x => new SitecoreContext())); 
+0

Yep я на самом деле понял, что это на прошлой неделе - супер просто. По какой-то причине я ожидал, что будет сложнее подключить IoC. –

Смежные вопросы