отключить создание web.config для проекта asp. net core 3.1 - PullRequest
3 голосов
/ 05 мая 2020

Команда dotnet publish для моего проекта ASP. NET Core 3.1 создает файл web.config в моем каталоге publish/. Я не хочу, чтобы этот файл был сгенерирован (или скопирован в эту папку, по крайней мере) - он никогда не должен использоваться с IIS.

Когда я взглянул на вывод команды с увеличенной детализацией , Я нашел следующий текст:

   Target "_TransformWebConfig" in file "C:\Program Files\dotnet\sdk\3.1.200\Sdks\Microsoft.NET.Sdk.Publish\targets\TransformTargets\Microsoft.NET.Sdk.Publish.TransformFiles.targets" from project "C:\repos\reportweb\reportweb\reportweb.csproj" (target "_AspNetCoreProjectSystemPostPublish" depends on it):
       Using "TransformWebConfig" task from assembly "C:\Program Files\dotnet\sdk\3.1.200\Sdks\Microsoft.NET.Sdk.Publish\targets\..\tools\netcoreapp2.1\Microsoft.NET.Sdk.Publish.Tasks.dll".
       Task "TransformWebConfig"
         Configuring the following project for use with IIS: 'C:\repos\reportweb\reportweb\bin\Release\netcoreapp3.1\linux-x64\publish\'
         Updating web.config at 'C:\repos\reportweb\reportweb\bin\Release\netcoreapp3.1\linux-x64\publish\web.config'
         Configuring project completed successfully
       Done executing task "TransformWebConfig".
   Done building target "_TransformWebConfig" in project "reportweb.csproj".

Можно ли каким-то образом настроить мой проект, чтобы пропустить _TransformWebConfig Target или TransformWebConfig Task - или использовать другой способ пропустить генерацию? Я знаю, что могу заставить MSBuild удалить файл позже, но отключение этого параметра кажется мне менее хакерским .

1 Ответ

2 голосов
/ 05 мая 2020

Вы можете контролировать это с помощью свойства IsWebConfigTransformDisabled MSBuild:

Чтобы предотвратить преобразование файла web.config, установите свойство MSBuild $(IsWebConfigTransformDisabled):

dotnet publish /p:IsWebConfigTransformDisabled=true

Поскольку это свойство MSBuild, вы можете установить его в .csproj вместо того, чтобы передавать его в качестве аргумента командной строки:

<PropertyGroup>
    <IsWebConfigTransformDisabled>true</IsWebConfigTransformDisabled>
</PropertyGroup>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...