Kann Autofac Abhängigkeiten in Layoutansichtsdateien einfügen?

Ich versuche, eine Abhängigkeit in die Seite der freigegebenen Layoutansicht einzufügen, um zu vermeiden, dass dies in jeder Ansicht durchgeführt werden muss, die das Layout verwendet.

Ich bin dem gefolgtBeratung im Wiki zum Einfügen von Abhängigkeiten in Ansichten, aber die Eigenschaft ist immer null.

Kann Autofac Eigenschaften in eine benutzerdefinierte Ansichtsseite einfügen, die eine Layoutdatei ist?

Hier ist mein Setup. CustomViewPage

namespace MyApp
{
    using System.Web.Mvc;

    public abstract class CustomViewPage : WebViewPage
    {
        public IHelper Helper { get; set; }
    }
}

~ / Views / Shared / _Layout.cshtml

@inherits MyApp.CustomViewPage
<!DOCTYPE html>
<html>
...
@if(this.Helper.HasFoo()){@Html.ActionLink("Bar")}

Globale Registrierung ...

builder.RegisterType<Helper>().AsImplementedInterfaces();
builder.RegisterModelBinderProvider();
builder.RegisterFilterProvider();
builder.RegisterModule(new AutofacWebTypesModule());
builder.RegisterSource(new ViewRegistrationSource());
var container = builder.Build();
DependencyResolver.SetResolver(new AutofacDependencyResolver(container));

Die "untergeordneten" Ansichten, die das Layout verwenden, stammen NICHT von CustomViewPage.

Antworten auf die Frage(5)

Ihre Antwort auf die Frage