8

ビルド サーバーで、奇妙なメッセージが表示されます。そうは言っていませんが、「fx cop」と呼ばれるソフトウェアからのものだと思います

警告 CS0067: イベント 'SunGard.Adaptiv.AnalyticsEngine.UI.CommonControls.DisabledCommand.CanExecuteChanged' は使用されません

このメッセージを黙らせるにはどうすればよいですか? 私のクラスが行うことを変更せずに。

sealed class DisabledCommand : ICommand
{
    public event EventHandler CanExecuteChanged;

役に立つと思われるドキュメントを偶然見つけましSystem.Diagnostics.CodeAnalysis.SuppressMessageAttributeたが、警告の例はありません。

4

1 に答える 1

18

発生しないイベントを作成する必要がある場合は、noopイベントを作成する必要があります。

public EventHandler CanExecuteChanged {
    add { }
    remove { }
}

デフォルトの(「フィールドのような」)イベントがハンドラーを格納するための非表示のバッキングフィールドを作成するため、コンパイラーは文句を言います。イベントを発生させることはないので、そのフィールドはメモリを浪費するだけです。

于 2013-01-04T16:22:15.473 に答える