c# - VS 2013/2015 代码分析——抑制来自第三方库的警告

标签 c# visual-studio visual-studio-2013 visual-studio-2015 code-analysis

我正在编写一个使用 log4net 和一些其他第三方库的小型应用程序。

我想对我编写的代码运行 Visual Studio 的代码分析,但目前有大约两千条来自 log4net 和我无法控制的其他库的消息。例如,在此示例图像 ( Image of Visual Studio Code Analysis window ) 中,我想保留第一条和第二条消息(BfLicense 是我编写的代码),但抑制 log4net 消息。

在运行代码分析时,是否有办法抑制或忽略来自库引用的所有消息?理想情况下,代码分析根本不会在引用库上运行,因为它似乎会大大减慢分析速度。

在查看了 GlobalSuppressions.cs 文件的 MSDN 文档描述并检查了 stackoverflow 之后,我找不到让 Visual Studio 忽略外部库的方法,但我想这是其他人遇到的常见问题,所以希望有是我可以遵循的最佳实践。

在此先感谢您提供的任何帮助。

附言这些答案帮助我理解了 GlobalSuppressions.cs 文件的一些限制,但没有完全回答我的问题:

Code analysis fails on project referencing obfuscated assembly .

How to suppress code analysis messages for all type members?

最佳答案

感谢 jessehouwing 为我指明了正确的方向。尝试在另一个项目中重现该问题使我意识到 ILMerge 是问题的根本原因。代码分析工具无法确定在合并的程序集中哪些代码是您的或不是您的。解决方案是对未合并的程序集运行代码分析。

事实上 - jessehouwing 之前在这个问题中为另一个用户解决了这个问题:In Visual Studio 2013 how do I limit code analysis to my code and not to referenced assemblies?

关于c# - VS 2013/2015 代码分析——抑制来自第三方库的警告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34708523/

相关文章:

c# - 在 flowLayout 中的控件之间设置更多空间

c++ - 有没有办法自动避免进入 Visual Studio 中的某些功能?

c# - 如何将 visual studio 2010 SP1 解决方案转换为 visual studio 2012 解决方案?

android-emulator - Genymotion 查看本地主机站点

c# - 在处理完消息之前不要收听 Windows 服务

c# - while循环中的HttpClient只执行一次

visual-studio - pthread 与 Visual Studio 2013 中的应用程序静态链接

c++ - 使用二进制确定图像文件的扩展类型

visual-studio - 使用 pfx 和 Visual Studio 签署具有强名称的程序集

c# - 在类里面达到类功能?