VS 2012 のコード分析ツールは、私のコードにいくつかの問題を示唆しています。ほとんどは問題ありませんが、これ(CA1009 はイベント ハンドラーを正しく宣言します) ですが、理由がわかりません。
何かが起こったことを知るためだけに、データが必要ない場合は、不要なパラメーターを持つイベントを使用して、本音を曖昧にしているように思えます。
たとえば、特定の条件に一致するすべての顧客を一覧表示したいとします。リポジトリが更新された場合は、データを再確認する必要があります。
そこで、リポジトリ クラスを作成し、次のシグネチャを使用して DataChanged イベントを指定します。
public event Action DataChanged;
次に、レポを使用するクラスの1つで実行できます
repository.DataChanged += UpdateMatchingCustomers;
private void UpdateMatchingCustomers() {
MatchingCustomers = ...
}
なぜこれが悪い考えなのですか?