8

SupressMessage 选项在 VS 2010 Pro 中不可用吗?

当我右键单击警告列表中的警告时,没有抑制选项。我也尝试过错误,但没有选择。然后我尝试创建自己的 GlobalSuppression.cs 文件,但不知道该警告应归入哪个类别。

现在我正在这样做,它有效,但我更喜欢使用 GlobalSuppression 文件

#pragma warning disable 0649,0169
[Import(AllowRecomposition = false)]
private IModuleManager _moduleManager;

[Import(AllowRecomposition = false)]
private IRegionManager _regionManager;

[Import(AllowRecomposition = false)]
private IRibbonService _menuService;
#pragma warning restore 0649,0169

这些是我要抑制的输出窗口中的警告:

warning CS0649: Field 'Shell._moduleManager' is never assigned to, and will always have its default value null
warning CS0169: The field 'Shell._regionManager' is never used
warning CS0649: Field 'Shell._menuService' is never assigned to, and will always have its default value null

我想抑制的原因是我的解决方案使用 Prism / MEF,因此这些变量是在运行时分配的。

4

1 回答 1

6

您看到的 CSxxxx 警告是 C# 编译器警告,而不是 FxCop/代码分析警告。必须使用#pragma warning disable指令而不是 SuppressMessage 属性来抑制它们。

顺便说一句,集成代码分析仅在 Premium 或 Ultimate 中可用,在 Pro 中不可用。

于 2011-02-15T19:18:58.793 回答