Mam aplikację ASP.NET Core (Web Api). Dokumentacja wyjaśniła working with multiple environments, ale nie wyjaśniono, jak ustawić aspnetcore_environment
podczas publikowania strony internetowej.Jak ustawić środowisko aspnetcore w pliku publikacyjnym?
Więc powiedzmy, że jeśli mam 3 środowisk Development
, Staging
i Production
w klasycznych aplikacji ASP.NET Web i użyte do wygenerowania 3 konfiguracje kompilacji.
Development
,Staging
iProduction
(jak pokazano na rysunku poniżej). a następnie 3.pubxml
plików, po jednym dla każdej konfiguracji. Czy muszę używać tego samego podejścia do aplikacjiASP.NET Core
?Jak ustawić
aspnetcore_environment
w pliku.pubxml
?Jeśli podejście określone w pytaniu 1 jest przestarzałe, to jakie jest podejście alternatywne? (Używam Jenkins dla CI)
Update 1
Rozumiem, że muszę ustawić ASPNETCORE_ENVIRONMENT
jednak nie jestem w stanie zrozumieć, gdzie możemy ustawić to? W trakcie rozwoju mogę ustawić to w profilu w launchSettings.json
, jednak pytanie brzmiało, w jaki sposób ustawić to podczas publikowania do przemieszczania lub produkcji? czy ustawiamy zmienną środowiskową na samym serwerze docelowym?
Aktualizacja 2
znalazłem artykuł, który wyjaśnia here różne sposoby ustawiania zmiennej środowiskowej. To częściowo odpowiedział na moje pytanie. Jednak kiedy opublikować aplikację, proces publikowania nie honoruje zmienną środowiskową podczas publikowania appsettings.{env.EnvironmentName}.json
stworzyłem osobny post na to pytanie
Możliwy duplikat [Przekaż hostingu środowisko do samodzielnego hostowania] (http://stackoverflow.com/questions/39203820/pass-hosting-environment- dla-siebie -hosting). Na to pytanie już tam udzielono odpowiedzi. Po prostu użyj komendy/powershell/bash/azureportal, aby ustawić zmienną środowiskową – Tseng