編譯器錯誤 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; }
}
在自己的檔案內宣告型別很常見,這也可以透過將型別宣告與最上層陳述式分開來更正此錯誤。