次の方法で共有


コンパイラ エラー 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; }
}

型は独自のファイル内で宣言するのが一般的です。そうすると型宣言が最上位レベルのステートメントから分離されるので、このエラーも修正できます。