Entfernen unerwünschter appsettings.json beim Veröffentlichen eines Programms

Diese Seite wurde aktualisiert :
Erstellungsdatum der Seite :

Umgebung

Visual Studio
  • Visual Studio 2019
ASP.NET Core
  • 3.1

Informationen zu veröffentlichten appssettings.json

ASP.NET Von Core erstellte Programme laden nun die Einstellungen "appssettings.json" und "appssettings.production.json" je nach Umgebung. Sie müssen sich keine Gedanken über die direkte Veröffentlichung auf dem Server und nicht die Bearbeitung von appsettings.json machen. In der Tat, wenn Sie sich die Liste der veröffentlichten Dateien ansehen, werden Sie sehen, dass "appssettings. Sie können auch sehen, dass unnötige Dateien wie "Development.json" auch veröffentlicht wurden.

Es ist kein Problem, wenn Sie appssettings.json nicht bearbeiten, nachdem Sie das Programm wie oben beschrieben direkt auf dem Server veröffentlicht haben. Wenn Sie einmal als Datei veröffentlichen möchten, ohne direkt auf dem Server zu veröffentlichen, oder wenn Sie appssettings.json später direkt auf dem Server bearbeiten möchten, Das Vorhandensein mehrerer appsettings.json kann einen Konfigurationsfehler usw. auslösen, was sehr gefährlich ist.

Sie können die unerwünschten appssettings.json jedes Mal, wenn Sie veröffentlichen, manuell löschen, aber dies kann auch ein Fehler sein, weil es durch die Hände der Menschen geht.

In diesem Abschnitt wird beschrieben, wie unerwünschte appssettings.json zum Zeitpunkt der Veröffentlichung entfernt wird.

Konfigurationsschritte zum automatischen Löschen unerwünschter appssettings.json zum Zeitpunkt der Veröffentlichung

Veröffentlichen Sie zunächst einmal, und erstellen Sie ein Profil. Ändern Sie den Namen des Profils, damit es leichter verständlich ist. (Hier wird es mit dem Profilnamen Release eingestellt)

Bei der Veröffentlichung wird im Ordner Eigenschaften eine Datei mit dem Namen "PublishProfiles"<Profilname>.pubxml erstellt, um sie zu öffnen.

Da es sich bei dem Inhalt um XML-Dateien handelt, fügen Sie appsettings.json, die Sie ausschließen möchten, zum Speicherort der folgenden Kommentare hinzu. Wenn mehr als eine vorhanden ist, fügen Sie "Inhalt" und "Keine" so viele wie nötig hinzu und setzen Sie "Entfernen" und "Einschließen" auf den Zieldateinamen.

<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <PropertyGroup>
    <WebPublishMethod>FileSystem</WebPublishMethod>
    <PublishProvider>FileSystem</PublishProvider>
    <LastUsedBuildConfiguration>Release</LastUsedBuildConfiguration>
    <LastUsedPlatform>Any CPU</LastUsedPlatform>
    <SiteUrlToLaunchAfterPublish />
    <LaunchSiteAfterPublish>True</LaunchSiteAfterPublish>
    <ExcludeApp_Data>False</ExcludeApp_Data>
    <TargetFramework>netcoreapp3.1</TargetFramework>
    <ProjectGuid>d988b0db-dad2-4308-baa1-6d1c89a074db</ProjectGuid>
    <SelfContained>false</SelfContained>
    <publishUrl>bin\Release\netcoreapp3.1\publish\</publishUrl>
    <DeleteExistingFiles>False</DeleteExistingFiles>
  </PropertyGroup>
  <!-- ここから追加 -->
  <ItemGroup>
    <Content Remove="appsettings.Development.json" />
    <None Include="appsettings.Development.json" />
  </ItemGroup>
  <!-- ここまで追加 -->
</Project>

Bitte versuchen Sie, zu veröffentlichen, sobald Sie gespeichert haben. Sie können überprüfen, ob die angegebene Datei nicht veröffentlicht wurde.