Ошибка компилятора CS0118
Обновлен: Ноябрь 2007
Сообщение об ошибке
'имя_конструкции1' является "конструкция1", но используется как "конструкция2"
'construct1_name' is a 'construct1' but is used like a 'construct2'
Компилятором обнаружена ситуация, при которой конструкция используется неверным способом или к ней применяется недопустимая операция. Ниже следуют некоторые наиболее распространенные примеры этого.
Попытка создать экземпляр пространства имен (а не класса).
Попытка вызвать поле (а не метод).
Попытка использовать тип как переменную.
Попытка использовать внешний псевдоним в качестве типа.
Для устранения этой ошибки убедитесь, что выполняемая операция допускается для типа, к которому она применяется.
Пример
Следующий пример приводит к возникновению ошибки CS0118.
// CS0118.cs
// compile with: /target:library
namespace MyNamespace
{
class MyClass
{
// MyNamespace not a class
MyNamespace ix = new MyNamespace (); // CS0118
}
}