我知道这在命令行上很容易--只需运行dotnet publish
而不是dotnet build
,但我是在Visual Studio内部构建的,我希望某个。NET核心项目在VS构建时本质上执行dotnet publish
逻辑。
我期待某种构建属性。 试着用谷歌搜索-没找到。。。
我通过在项目文件中添加以下行来解决它:
<Target Name="SetNoBuild">
<PropertyGroup>
<NoBuild>true</NoBuild>
</PropertyGroup>
</Target>
<Target Name="PublishAfterBuild" AfterTargets="AfterBuild" DependsOnTargets="SetNoBuild;Publish" />
<Target Name="CleanAfterBuild" AfterTargets="AfterClean">
<RemoveDir Directories="$(PublishDir)" Condition="'$(PublishDir)' != ''"/>
</Target>
不知道有没有更简单的办法。