Greifen Sie auf IApplicationEnvironment.ApplicationBasePath zu

8

Wie kann ich über die Eigenschaft IApplicationEnvironment.ApplicationBasePath von überall im Code auf den Basispfad der ASP.NET Core-Anwendung zugreifen? Ich bin nicht in der Startup-Klasse, sondern in einer anderen Hilfsklasse, und ich muss das Verzeichnis der aktuellen Anwendung von dort finden. Es gibt auch keinen HttpContext, da die Methode unabhängig von Anforderungen eines Timers aufgerufen wird. Kann ich den Abhängigkeitscontainer oder etwas für diese Information fragen? Gibt es eine andere Möglichkeit, diese Informationen zu erhalten?

    
ygoe 18.05.2016, 11:34
quelle

2 Antworten

10

Überprüfen Sie immer die Ankündigungen auf GitHub für die Beta / RC-Versionen.

Wie angekündigt hier wurde die Schnittstelle IApplicationEnvrionment aus dem ASP.NET Core RC2 entfernt.

Um den Pfad in der Startmethode zu erhalten, tun Sie dies

%Vor%

Wenn Sie es außerhalb benötigen, können Sie entweder die statische PlatformServices.Default -Methode verwenden, um auf ihre konkreten Typen zuzugreifen, oder sie mit dem IoC-Container registrieren und an anderer Stelle auflösen. Später ist es für die meisten Anwendungen vorzuziehen.

    
Tseng 18.05.2016 11:43
quelle
7

Sie können das jetzt von

bekommen %Vor%

IApplicationEnvironment existiert nicht mehr

    
Joe Audette 18.05.2016 11:44
quelle

Tags und Links