SuppressMessage和代码分析

读C#源代码的时候,经常看到如下代码:

[SuppressMessage("Microsoft.Reliability", "CA2000:Dispose objects before losing scope")]
[SuppressMessage("Microsoft.Usage", "CA2214:DoNotCallOverridableMethodsInConstructors")]
public Method(int arg)
{
    //code
}

这个SuppressMessage到底有什么作用?翻阅MSDN,其实它的直接作用很简单,就是忽略掉代码检查时违反检查规则发出的警告。

代码检查

好的代码检查工具可以减少程序员出错概率,提高代码的质量。Visual Studio自带强大的代码检查工具,下面简单举例说明代码检查如何工作:
1. 打开VS(我使用的是VS2012 Ultimate版),新建一个C#类库项目CodeCheckSample。
2.在默认类Class1写Add方法。


                
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
在 Rider 中屏蔽代码红线有几种方法: 1. 禁用编译器错误 你可以在 Rider 的设置中禁用编译器错误。这样做会禁用所有的编译器错误和警告,包括那些你需要关注的错误。要禁用编译器错误,请按照以下步骤操作: - 打开 Rider 的设置(File -> Settings)。 - 找到 Editor -> Inspections。 - 在右侧面板中,选择 C# -> General。 - 将“Severity”下的“Error”和“Warning”都设置为“None”。 - 单击“Apply”保存更改。 这样做会禁用所有编译器错误和警告,包括那些你需要关注的错误。因此,这种方法并不推荐。 2. 使用 ReSharper 屏蔽错误 如果你在 Rider 中安装了 ReSharper 插件,你可以使用 ReSharper 的“屏蔽错误”功能来屏蔽代码红线。要屏蔽错误,请按照以下步骤操作: - 在错误行上单击红线。 - 从上下文菜单中选择“屏蔽错误”。 - 选择一个适当的屏蔽范围。 - 单击“确定”。 这样做会在代码中生成一个特殊的注释,以屏蔽错误。但是,这种方法只是屏蔽了错误的显示,而不是真正解决了错误。 3. 使用 SuppressMessage 属性屏蔽错误 在 C# 中,你可以使用 SuppressMessage 属性屏蔽代码分析器错误。要使用 SuppressMessage 属性,请按照以下步骤操作: - 在错误行上单击红线。 - 从上下文菜单中选择“Copy Error”。 - 在代码中添加一个 SuppressMessage 属性,将错误粘贴到 Message 参数中。 以下是一个示例: ```csharp [System.Diagnostics.CodeAnalysis.SuppressMessage("Style", "IDE0019:Use pattern matching", Justification = "<Pending>", Scope = "member", Target = "~M:MyClass.MyMethod(System.Object)")] public void MyMethod(object obj) { // Some code here } ``` 在这个示例中,我们使用 SuppressMessage 属性屏蔽了一个“Use pattern matching”的错误。你可以将这个属性添加到类、方法、属性或字段等代码元素中。 请注意,这种方法只是屏蔽错误的显示,而不是真正解决了错误。因此,你应该在屏蔽错误之后尽快修复它们。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值