Это похоже на предупреждение 67, и его можно подавить с помощью:
#pragma warning disable 67
Не забудьте восстановить его как можно скорее (после объявления события) с помощью:
#pragma warning restore 67
Однако я бы проверил еще раз и убедился, что вы где-то инициируете событие, а не просто подписываетесь на него. Тот факт, что компилятор выдает 20 предупреждений, а не 20 ошибок, когда вы комментируете событие, тоже вызывает подозрение ...
Также есть интересная статья об этом предупреждении и, в частности, о том, как оно применяется к интерфейсам; есть хорошее предложение, как бороться с "неиспользуемыми" событиями. Важные части:
Правильный ответ - четко указать, чего вы ждете от события, которое в данном случае ничего не стоит:
public event EventHandler Unimportant
{
add { }
remove { }
}
Это полностью подавит предупреждение, а также дополнительную сгенерированную компилятором реализацию нормального события. И как еще одно дополнительное преимущество, это побуждает задуматься о том, действительно ли эта реализация, не делающая ничего, лучшей реализацией. Например, если событие не столько неважно, сколько не поддерживается, так что клиенты, которые полагаются на эту функциональность, вероятно, потерпят неудачу без нее, может быть лучше явно указать отсутствие поддержки и быстро выйти из строя, бросив исключение:
public event EventHandler Unsupported
{
add { throw new NotSupportedException(); }
remove { }
}
Конечно, интерфейс, который может быть успешно реализован без некоторых частей его функциональности, иногда указывает на то, что интерфейс не является оптимально связным и должен быть разделен на отдельные интерфейсы.
person
lc.
schedule
07.07.2009