に文句を言う私は、イベントコード分析ルールCA1040:空のインターフェイスを避けるには、非空のインターフェイス
にinterface IMyInterface
{
event SomeHandler MyEvent1;
event SomeHandler MyEvent2;
...
}
を宣言するインタフェースを持っていますが、私はコード解析ルールCA1040を有効にすると:それは文句を言い、空のインターフェイスを、避けてください私のインターフェイスは、このルール、それを解決するための任意のアイデアに違反している?
警告を抑制するだけですか?それははっきりと偽りです。 –
私は本当の理由があるときにのみ抑制することを好みます。この場合、ルールが正しく機能しないという理由があります。 –
インターフェイスが空であると見なすと奇妙です。 'event'宣言は実装クラス/構造体が' add'と 'remove'アクセサの両方を含むその型(' SomeHandler')で 'event'を持たなければならないという要件です。実装者が "フィールドライクなイベント"を使用することを選択した場合、2つのアクセサは "暗黙的"になる可能性があります。インデクサだけで動作しますか?つまり、 'IMyInterface'の唯一のメンバが' string [int idx] {get; } '? –