Ich muss die ConfigureServices
Methode einchecken , ob der aktuelle Name der Hosting-Umgebung "Entwicklung" lautet.
Die Verwendung der IHostingEnvironment.IsDevelopment()
Methode mag für mich in Ordnung sein, aber im Gegensatz zur Methode "Konfigurieren" habe ich keine IHostingEnvironment env
.
asp.net-core
einstellen
quelle
quelle
ConfigureServices
ist es unmöglich?ConfigureServices
, ist unmöglich, da das Framework die Abhängigkeitsinjektion für diese bestimmte Methode nicht wie in anderen Bereichen unterstützt (wahrscheinlich, weil Sie diese Methode zum Konfigurieren der Abhängigkeitsinjektion verwenden). Die Einstellung auf Konstruktorebene, wie von Joe beschrieben, sollte das Problem umgehen.Hier von der Frage kopiert, die als Duplikat dieser Frage markiert und gelöscht wurde . Gutschrift an a-ctor .
Wenn Sie zugreifen möchten
IHostingEnvironment
inConfigureServices
Sie müssen es über den Konstruktor injizieren und speichern sie für einen späteren Zugriff inConfigureServices
:quelle
environment
ist das Kleinbuchstaben, während die Eigenschaft zu sein scheintEnvironment
.IHostingEnvironment
erst ab veraltet ist.Net Core 3.0
? (Ich arbeite an einem "Take-Home-Test", derservices.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_2);
dieConfigureServices()
Methode aufruft, und IHostingEnvironment funktioniert einwandfrei.IHostingEnvironment
ist in Core 3.1 veraltetsollte den Trick machen ...
Dann verweisen Sie überall mit
_env.IsDevelopment()
etc ...quelle