Questo sembra essere l' avviso 67 e può quindi essere soppresso con:
#pragma warning disable 67
Non dimenticare di ripristinarlo il prima possibile (dopo la dichiarazione dell'evento) con:
#pragma warning restore 67
Tuttavia, controllerei di nuovo e mi assicurerei che tu stia promuovendo l'evento da qualche parte, non solo iscrivendoti . Anche il fatto che il compilatore emetta 20 avvisi e non 20 errori quando si commenta l'evento è sospetto ...
C'è anche un articolo interessante su questo avviso e specificamente su come si applica alle interfacce; c'è un buon suggerimento su come affrontare gli eventi "inutilizzati". Le parti importanti sono:
La risposta giusta è essere espliciti su cosa ti aspetti dall'evento, che in questo caso non è niente:
public event EventHandler Unimportant
{
add { }
remove { }
}
Ciò eliminerà in modo pulito l'avviso, nonché l'implementazione aggiuntiva generata dal compilatore di un evento normale. E come un altro vantaggio aggiuntivo, spinge a pensare se questa implementazione non pratica sia davvero la migliore implementazione. Ad esempio, se l'evento non è tanto poco importante quanto non supportato, in modo tale che i client che fanno affidamento sulla funzionalità rischiano di fallire senza di essa, potrebbe essere meglio indicare esplicitamente la mancanza di supporto e fallire velocemente lanciando un eccezione:
public event EventHandler Unsupported
{
add { throw new NotSupportedException(); }
remove { }
}
Naturalmente, un'interfaccia che può essere utilmente implementata senza alcune parti della sua funzionalità a volte è un'indicazione che l'interfaccia non è perfettamente coesa e dovrebbe essere suddivisa in interfacce separate.