我有一个声明事件的接口
interface IMyInterface
{
event SomeHandler MyEvent1;
event SomeHandler MyEvent2;
...
}
但是当我启用代码分析规则CA1040: Avoid empty interfaces时,它抱怨我的接口违反了这个规则,有什么想法可以解决吗?
我有一个声明事件的接口
interface IMyInterface
{
event SomeHandler MyEvent1;
event SomeHandler MyEvent2;
...
}
但是当我启用代码分析规则CA1040: Avoid empty interfaces时,它抱怨我的接口违反了这个规则,有什么想法可以解决吗?
它抱怨的原因是因为这个接口不需要任何实现。您不能以任何特定方式实现事件声明。
正如马修建议的那样,压制它。你可能需要在你的类的顶部添加这个:
#define CODE_ANALYSIS
或者抑制被忽略。
编辑
毕竟这可能是一个错误,因为实际上需要任何继承接口的类来“实现”它 - 因此:它不是一个空接口。
见这篇文章。它描述了如何使用SuppressMessageAttribute
. Visual Studio 提供了一个方便的菜单来添加这个属性:http:
//msdn.microsoft.com/en-us/library/ms182069.aspx