Поделиться через


Ошибка компилятора CS0106

Обновлен: Ноябрь 2007

Сообщение об ошибке

Модификатор "модификатор" недопустим для этого элемента
The modifier 'modifier' is not valid for this item

Член класса или интерфейса помечен недопустимым модификатором доступа. В следующих примерах описываются некоторые недопустимые модификаторы.

  • Модификаторы static и public не разрешается использовать для методов интерфейса.

  • Ключевое слово public не разрешается использовать в явных объявлениях интерфейсов. В этом случае удалите ключевое слово public из явного объявления интерфейса.

  • Ключевое слово abstract не разрешается использовать в явных объявлениях интерфейса, поскольку явную реализацию интерфейса нельзя переопределить.

В предыдущих выпусках Visual Studio модификатор static не разрешалось использовать в классах, однако начиная с версии Microsoft Visual Studio 2005 классы с модификатором static являются допустимыми.

Дополнительные сведения см. в разделе Интерфейсы (Руководство по программированию в C#).

Пример

Следующий пример проводит к созданию ошибки CS0106.

// CS0106.cs
namespace MyNamespace
{
   interface I
   {
      void m();
      static public void f();   // CS0106
   }

   public class MyClass
   {
      public void I.m() {}   // CS0106
      public static void Main() {}
   }
}