Премахване на нежеланите приложения.json при публикуване на програма

Страницата се актуализира :
Дата на създаване на страница :

Околната среда

Визуално студио
  • Изглед от 10 до 2008
ASP.NET ядро
  • 3.1

За публикуваните приложениянастройки.json

ASP.NET програми, създадени от ядрото, сега зареждат настройките "appssettings.json" и "appssettings.production.json" в зависимост от околната среда. Не е нужно да се притеснявате за публикуване директно на сървъра и да не се налага да редактирате appsettings.json. Всъщност, ако погледнете списъка с публикувани файлове, ще видите, че "приложения, които се задават. Можете също да видите, че са публикувани и ненужни файлове като "Development.json".

Това не е проблем, ако не редактирате приложенияsettings.json, след като публикувате програмата директно на сървъра, както е описано по-горе. Ако искате да публикувате като файл веднъж без публикуване директно на сървъра или ако искате да редактирате приложенияsettings.json директно на сървъра по-късно, Наличието на множество appsettings.json може да предизвика грешка в конфигурацията, и т.н., което е много опасно.

Можете ръчно да изтриете нежеланите приложенияsettings.json всеки път, когато публикувате, но това може да бъде грешка, защото това минава през ръцете на хората.

Този раздел описва как да премахнете нежеланите настройки на приложения по време на публикуването.

Стъпки за конфигуриране за автоматично изтриване на нежеланите приложенияsettings.json по време на публикуването

Първо, публикувайте веднъж и създайте профил. Променете името на профила, за да го разберете по-лесно. (Тук е настроен с името на профила Издание)

Когато се публикува, в папката "Свойства" се създава файл с име "PublishProfiles\<Име на профил>.pubxml", така че щракнете двукратно върху него, за да го отворите.

Тъй като съдържанието е XML файлове, добавете appsettings.json, който искате да изключите, за да местоположението на следните коментари. Ако има повече от един, добавете "Съдържание" и "Няма" толкова, колкото е необходимо, и задайте "Премахване" и "Включване" към името на целевия файл.

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

Опитайте се да публикувате, след като сте записали. Можете да проверите дали указаният файл не е публикуван.