我正在使用ReSharper和StyleCop强加一些命名约定。我有一个规则,类名称以大写字母开头。但是,在某些类中,我需要违反规则(当命名从我的数据库直接映射的类时,我希望它们具有表,视图等的名称,我们的约定是以小写字母开头名称{表格为{1}},视图为t_
。
我使用v_
属性来抑制警告。它在一个类中工作正常。它不在另一个。这两个类都是部分类。在这两种情况下,我使用相同的属性和相同的消息。但在一个案例中,我仍然可以看到ReSharper抱怨。
这种抑制有效:
[SuppressMessage("StyleCop.CSharp.NamingRules", "SA1300:ElementMustBeginWithUpperCaseLetter"]
这不是:
[SuppressMessage("StyleCop.CSharp.NamingRules", "SA1300:ElementMustBeginWithUpperCaseLetter", Justification = "Reviewed. The name of the class resembles the name of the table in the database.")]
public partial class v_All_w_Status
{
// ..
}
我尝试再次删除和添加抑制,但行为没有变化。 很明显,我错过了什么,但我看不清楚。任何帮助高度赞赏。
解决:
在第二种情况下,存在拼写错误:它显示[SuppressMessage("StyleCop.CShrp.NamingRules", "SA1300:ElementMustBeginWithUpperCaseLetter", Justification = "Reviewed. The name of the class resembles the name of the table in the database.")]
public partial class t_Programs
{
// ..
}
而不是CShrp
。