2014-01-17 2 views
3

Рассмотрим следующий сценарийMVC5 инъекционная зависимость от вида с виндзором замка

У меня есть MVC5. Я хотел бы иметь базовый вид с некоторыми зависимостями, как:

public class BasicView<T> : WebViewPage<T>        
{   
    public IResourceService ResourceService { get; set; }  

    public override void Execute() 
    { 

    } 
} 

Тогда в WebConfig ....

<system.web.webPages.razor> 
    <host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=5.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" /> 
    <pages pageBaseType="BasicView"> 

Свойство никогда не вводили :(

, когда я использую такая же зависимость от обычного конструктора, работает без проблем.

Что мне здесь не хватает? В документации Windsort говорится, что контейнер попытается разрешить такие свойства.

ответ

3

Windsor не вводит ваши взгляды, потому что он не владеет процессом создания представления.

В этом случае вы должны использовать Windsor в качестве локатора сервисов. См. this answer, чтобы узнать, как его использовать.

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