编译器错误 CS8803
顶级语句必须位于命名空间和类型声明之前。
示例
下面的示例生成 CS8803:
// CS8803.cs (0,0)
public record Person
{
public string? GivenName { get; set; }
public string? FamilyName { get; set; }
}
int i = 0;
在具有顶级语句的文件中,顶级语句必须在任何类型声明之前发生。
更正此错误
将代码移到命名空间声明之前:
int i = 0;
public record Person
{
public string? GivenName { get; set; }
public string? FamilyName { get; set; }
}
通常,类型在各自的文件中声明,这也将通过将类型声明与顶级语句分开来更正此错误。