全局抑制 C# 编译器警告

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

在我的应用程序中,我有相当多的实体,它们的字段通过反射获取其值。 (在本例中,NHibernate 正在设置它们)。我想摆脱“x 从未分配给并且将始终具有其默认值 0”警告,以便我可以更轻松地找出其他警告。我知道你可以用 pragma 指令包围它们,但据我所知你必须为每一个都这样做。有没有一个项目范围或解决方案范围的方法可以做到这一点?

c# compiler-warnings suppress
4个回答
39
投票

使用 C# 命令行选项 /nowarn http://msdn.microsoft.com/en-us/library/7f28x9z3(VS.80).aspx

要在 Visual Studio 中执行此操作,请转到 项目属性->构建->(错误和警告)抑制警告,然后指定需要抑制的逗号分隔的警告列表。


12
投票

打开项目属性,在“构建”选项卡上,在“抑制警告:”框中输入要抑制的警告 ID。


1
投票

用于此目的的 VC++ XML 标记是 ,带有分号分隔的数字 ID 列表。 除了仅供参考之外,这似乎没有在我能看到的任何地方记录下来。


0
投票

至少在 VS2019 中,您可以通过在

Directory.Build.Props
级别添加以下内容来控制
<Project>
文件中的解决方案级别(实际上是目录级别)警告:

    <PropertyGroup>
        <NoWarn>MSB3270;MSD3246</NoWarn>
    </PropertyGroup>
© www.soinside.com 2019 - 2024. All rights reserved.