为 asp.net 核心 3.1 项目禁用 web.config 生成
disable web.config generation for asp.net core 3.1 project
我的 ASP.NET Core 3.1 项目的 dotnet publish
命令在我的 publish/
目录中创建了一个 web.config
文件。我不希望生成此文件(或至少复制到该文件夹)- 它永远不会与 IIS 一起使用。
当我查看详细程度增加的命令输出时,我发现了以下文本:
Target "_TransformWebConfig" in file "C:\Program Files\dotnet\sdk.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.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
目标或 TransformWebConfig
任务 - 或者使用其他方式跳过生成?我知道我可以让 MSBuild 之后删除文件,但禁用此功能对我来说似乎不那么 hacky。
您可以使用 IsWebConfigTransformDisabled
MSBuild 属性 控制它:
To prevent transformations of the web.config file, set the MSBuild property $(IsWebConfigTransformDisabled)
:
dotnet publish /p:IsWebConfigTransformDisabled=true
因为这是一个 MSBuild 属性,您可以在 .csproj 中设置它,而不是将其作为命令行参数传递:
<PropertyGroup>
<IsWebConfigTransformDisabled>true</IsWebConfigTransformDisabled>
</PropertyGroup>
我的 ASP.NET Core 3.1 项目的 dotnet publish
命令在我的 publish/
目录中创建了一个 web.config
文件。我不希望生成此文件(或至少复制到该文件夹)- 它永远不会与 IIS 一起使用。
当我查看详细程度增加的命令输出时,我发现了以下文本:
Target "_TransformWebConfig" in file "C:\Program Files\dotnet\sdk.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.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
目标或 TransformWebConfig
任务 - 或者使用其他方式跳过生成?我知道我可以让 MSBuild 之后删除文件,但禁用此功能对我来说似乎不那么 hacky。
您可以使用 IsWebConfigTransformDisabled
MSBuild 属性 控制它:
To prevent transformations of the web.config file, set the MSBuild property
$(IsWebConfigTransformDisabled)
:dotnet publish /p:IsWebConfigTransformDisabled=true
因为这是一个 MSBuild 属性,您可以在 .csproj 中设置它,而不是将其作为命令行参数传递:
<PropertyGroup>
<IsWebConfigTransformDisabled>true</IsWebConfigTransformDisabled>
</PropertyGroup>