Odstránenie nežiaducich zásuviek.json pri publikovaní programu

Stránka aktualizovaná :
Dátum vytvorenia strany :

Životné prostredie

Vizuálne štúdio
  • Vizuálne štúdio 2019
Jadro ASP.NET
  • 3.1

Informácie o publikovaných nastaveniach aplikácie appssettings.json

ASP.NET Core-vytvorené programy teraz načítať nastavenia "appssettings.json" a "appssettings.production.json" v závislosti na prostredí. Nemusíte sa starať o publikovanie priamo na server a nie je potrebné upravovať appsettings.json. V skutočnosti, ak sa pozriete na zoznam publikovaných súborov, uvidíte, že "appssettings. Môžete tiež vidieť, že nepotrebné súbory ako "Development.json" boli tiež zverejnené.

Nie je to problém, ak neupravíte appssettings.json po publikovaní programu priamo na server, ako je popísané vyššie. Ak chcete publikovať ako súbor raz bez publikovania priamo na server, alebo ak chcete upraviť appssettings.json priamo na serveri neskôr, Prítomnosť viacerých appsettings.json môže vyvolať chybu konfigurácie, atď, čo je veľmi nebezpečné.

Nechcené aplikáciesettings.json môžete pri každom publikovaní manuálne odstrániť, ale môže to byť aj chyba, pretože prechádza rukami ľudí.

Táto časť popisuje, ako odstrániť nechcené appssettings.json v čase zverejnenia.

Konfiguračné kroky na automatické odstránenie nechcených appssettings.json v čase zverejnenia

Najprv môžete raz publikovať a vytvoriť profil. Zmeňte názov profilu tak, aby ste ho lepšie pochopili. (Tu je nastavený s názvom profilu Release)

Po publikovaní sa v priečinku Vlastnosti vytvorí súbor s názvom PublishProfiles\<Názov profilu>.pubxml, takže ho dvojitým kliknutím otvorte.

Keďže obsah sú súbory XML, pridajte appsettings.json, ktoré chcete vylúčiť do umiestnenia nasledujúcich poznámok. Ak existuje viac ako jeden, pridajte "Obsah" a "Žiadny" toľko, koľko je potrebné, a nastaviť "Odstrániť" a "Zahrnúť" na názov cieľového súboru.

<?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>

Pokúste sa publikovať po uložení. Môžete overiť, či zadaný súbor nebol publikovaný.