C # Language Design: явная реализация интерфейса события

Небольшой вопрос о дизайне языка C # :))

Если бы у меня был такой интерфейс:

interface IFoo {
  int Value { get; set; }
}

Можно явно реализовать такой интерфейс, используя автоматически реализованные свойства C # 3.0:

sealed class Foo : IFoo {
  int IFoo.Value { get; set; }
}

Но если бы у меня было событие в интерфейсе:

interface IFoo {
  event EventHandler Event;
}

И пытаясь явно реализовать это с помощью поля как событие:

sealed class Foo : IFoo {
  event EventHandler IFoo.Event;
}

Я получу следующую ошибку компилятора:

error CS0071: An explicit interface implementation of an event must use event accessor syntax

Я думаю, что подобные событиям поля - это своего рода дуализм для автоматически реализуемых свойств.

Итак, мой вопрос:В чем причина такого ограничения?

Ответы на вопрос(4)

Ваш ответ на вопрос