Heim > Backend-Entwicklung > C#.Net-Tutorial > Beispiel für einen ASP.NET Core-Anwendungsveröffentlichungsbefehl

Beispiel für einen ASP.NET Core-Anwendungsveröffentlichungsbefehl

零下一度
Freigeben: 2017-06-24 10:46:45
Original
2303 Leute haben es durchsucht

ASP.NET Core-Anwendungsfreigabebefehl:

dotnet publish [<PROJECT>] [-f|--framework] [-r|--runtime] [-o|--output] [-c|--configuration] [--version-suffix] [-v|--verbosity] [-h|--help]
Nach dem Login kopieren

Beispielbefehl veröffentlichen (im Verzeichnis bin/release/netcoreapp1.1/publish generiert):

dotnet publish -c release
Nach dem Login kopieren

oben Der Befehl gibt nicht an, dass EnvironmentName veröffentlicht werden soll. Was bedeutet das? Beispielsweise sind die appsettings.json-Konfiguration in der ASP.NET Core-Anwendung, die Testumgebung und die Produktionsumgebungskonfiguration unterschiedlich (z. B. die Datenbankverbindungszeichenfolge). Wenn wir den obigen Freigabebefehl verwenden, müssen wir auch die appsettings.json Wenn die Datei in Zukunft geändert werden muss, muss sie erneut veröffentlicht und aktualisiert werden, was sehr mühsam ist.

Die Lösung des oben genannten Problems ist sehr einfach. Geben Sie die Umgebungsvariable ASPNETCORE_ENVIRONMENT des Entwicklungscomputers oder Servers an, nachdem Sie beim Ausführen dotnet *.dll das Programm ASP.NET Core gestartet haben lädt dies automatisch Die appsettings.*.json-Datei, die der Umgebungsvariablen entspricht, z. B. appsettings.Production.json.

Beispiel für einen ASP.NET Core-Anwendungsveröffentlichungsbefehl

Wenn wir VS 2017 F5 zum Debuggen des Projekts verwenden, wird die Umgebungsvariable ASPNETCORE_ENVIRONMENT standardmäßig festgelegt, z. B. launchSettings.json im ASP. NET Core-Anwendung. Beispielkonfiguration:

"profiles": {"IIS Express": {  "commandName": "IISExpress",  "launchBrowser": true,  "launchUrl": "api/values",  "environmentVariables": {"ASPNETCORE_ENVIRONMENT": "Development"  }},"AspNetCore.Samples": {  "commandName": "Project",  "launchBrowser": true,  "launchUrl": "api/values",  "environmentVariables": {"ASPNETCORE_ENVIRONMENT": "Development"  },  "applicationUrl": "http://localhost:59522"}}
Nach dem Login kopieren

StartupBeispielkonfiguration:

public Startup(IHostingEnvironment env)
{var builder = new ConfigurationBuilder()
        .SetBasePath(env.ContentRootPath)
        .AddJsonFile("appsettings.json", optional: false, reloadOnChange: true)
        .AddJsonFile($"appsettings.{env.EnvironmentName}.json", optional: true)
        .AddEnvironmentVariables();
    Configuration = builder.Build();
}
Nach dem Login kopieren

Weil in der obigen Konfiguration ASPNETCORE_ENVIRONMENT ist auf Development eingestellt, wir verwenden VS 2017 F5 zum Debuggen des Projekts und die appsettings.Development.json-Konfigurationsdatei unter dem Projekt wird geladen und verwendet. Wenn diese Datei nicht vorhanden ist, verwendet ASP.NET Core appsettings.jsonKonfigurationsdatei standardmäßig.

Wie legen wir dann die Umgebungsvariable ASPNETCORE_ENVIRONMENT auf dem Server fest? Es ist ganz einfach: Geben Sie einfach einen Befehl ein.

1. Windows-Servereinstellungen

Befehlszeile:

>setx ASPNETCORE_ENVIRONMENT "Development"SUCCESS: Specified value was saved.
Nach dem Login kopieren

oder (erfordert Administratorrechte)

>setx ASPNETCORE_ENVIRONMENT "Development" /MSUCCESS: Specified value was saved.
Nach dem Login kopieren

PowerShellBefehl:

$Env:ASPNETCORE_ENVIRONMENT = "Prodction"
Nach dem Login kopieren

Nachdem Sie den Umgebungsbefehl in Windows festgelegt haben, müssen Sie eine Befehlszeile erneut öffnen dotnet *.dll, um das Projekt zu starten, damit es wirksam wird.

2. MacOS/Linux-Servereinstellungen

Befehlszeile:

export ASPNETCORE_ENVIRONMENT=development
Nach dem Login kopieren

dotnet *.dllBeim Starten des Projekts können wir den aktuellen Stand sehen von Hosting environment, um zu überprüfen, ob es korrekt ist, Beispiel:

> dotnet AspNetCore.Samples.dllHosting environment: ProdtctionContent root path: C:\Users\yuezh\Desktop\Demo\AspNetCore.SamplesNow listening on: http://*:5003Application started. Press Ctrl+C to shut down.
Nach dem Login kopieren

Referenz:

  • dotnet-publish

  • Arbeiten mit mehreren Umgebungen

  • So richten Sie die Hosting-Umgebung in ASP.NET Core ein

Das obige ist der detaillierte Inhalt vonBeispiel für einen ASP.NET Core-Anwendungsveröffentlichungsbefehl. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage