从 csproj 覆盖 --warnaserror 和 -p:TreatWarningsAsErrors=True

问题描述 投票:0回答:1

我有一个 GH 工作流程,使用

dotnet build
--warnaserror
运行
-p:TreatWarningsAsErrors=True
命令行。这构建了一个解决方案。

该解决方案由多个项目组成。让我们说

A.csproj
B.csproj

是否有任何选项可以覆盖单个项目的

--warnaserror
中的命令行
-p:TreatWarningsAsErrors=True
csproj
?我不想将警告视为项目 B 的错误。

我尝试将其添加到

csproj

  <PropertyGroup>
    <TreatWarningsAsErrors>false</TreatWarningsAsErrors>
  </PropertyGroup>

但似乎它仍然更喜欢命令行设置,因此构建仍然失败,因为它仍然将项目 B 中的警告视为错误。

c# asp.net visual-studio msbuild
1个回答
0
投票

在命令行上设置的属性是全局并且不能被覆盖。但项目 B 可以声明

TreatAsLocalProperty="TreatWarningsAsErrors"
,然后覆盖应该可以工作。

© www.soinside.com 2019 - 2024. All rights reserved.