Ошибка компилятора CS0116
Обновлен: Ноябрь 2007
Сообщение об ошибке
Пространство имен не может непосредственно содержать такие члены, как поля или методы
A namespace does not directly contain members such as fields or methods
Внутри пространства имен компилятор допускает использование только классов, структур, объединений, интерфейсов и делегатов. Эта ошибка часто возникает у разработчиков с опытом работы в C/C++, которые забывают, что в C# метода и переменные должны объявляться и определяться внутри структуры или класса. Дополнительные сведения см. в разделе Общая структура программы на C# (Руководство по программированию на C#).
Пример
Следующий пример приводит к возникновению ошибки CS0116:
// CS0116.cs
namespace x
{
using System;
// method must be in class/struct
void Method(string str) // CS0116
{
Console.WriteLine(str);
}
}