イベントを宣言するインターフェースがあります
interface IMyInterface
{
event SomeHandler MyEvent1;
event SomeHandler MyEvent2;
...
}
しかし、コード分析ルールCA1040を有効にすると、空のインターフェイスを避けてください。インターフェイスがこのルールに違反していると文句を言います。解決方法はありますか?
イベントを宣言するインターフェースがあります
interface IMyInterface
{
event SomeHandler MyEvent1;
event SomeHandler MyEvent2;
...
}
しかし、コード分析ルールCA1040を有効にすると、空のインターフェイスを避けてください。インターフェイスがこのルールに違反していると文句を言います。解決方法はありますか?
文句を言う理由は、このインターフェースが実装を必要としないためです。特定の方法でイベント宣言を実装することはできません。
マシューが示唆するように、それを抑制してください。これをクラスの一番上に追加する必要があるかもしれません:
#define CODE_ANALYSIS
または抑制は無視されます。
編集
インターフェースを継承するクラスは実際にはそれを「実装」するために再クエリされるため、結局のところバグである可能性があります-したがって、それは空のインターフェースではありません。
この記事を参照してください。の使い方を説明していますSuppressMessageAttribute
。Visual Studio には、この属性を追加するための便利なメニューが用意されています:
http://msdn.microsoft.com/en-us/library/ms182069.aspx