一般に、C# 6.0 には .NET Framework 4.6 が必要であると考えられていますが、これは完全に正確ではありません。
C# 6.0 の機能は Roslyn コンパイラーを使用してコンパイルされているため、古いフレームワーク バージョンをターゲットにすることができます。ただし、これらの機能がフレームワーク自体のサポートに依存している場合、制限が発生します。
たとえば、C# 6.0 の文字列補間は string.Format に変換されるため、古い .NET バージョンでも機能します。ただし、.NET 4.6 のバージョンでは System.FormattableString が導入されているため、IFormattable で使用するには .NET 4.6 が必要です。
あなたが言及した特定の機能、つまり null 伝播とプロパティの初期化に関しては、フレームワークからのサポートを必要としないため、.NET 4.0 で使用できます。
ただし、これらの機能を使用して .NET 4.0 に対してコンパイルされたコードは成功する可能性がありますが、コードがそのバージョンのフレームワークで使用できない型に依存している場合は、ランタイム例外が発生する可能性があることに注意することが重要です。
以上がC# 6.0 の機能と互換性のある .NET Framework のバージョンはどれですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。