Compiler Error CS0116
命名空间并不直接包含诸如字段或方法之类的成员
在 namespace 内,编译器只接受类、结构、联合、枚举、接口和委托。当 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);
}
// To fix the error, you must
// enclose a method in a class:
class Program
{
void Method2(string str)
{
Console.WriteLine(str);
}
}
}