Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Nejnovější kompilátor jazyka C# určuje výchozí jazykovou verzi na základě cílové architektury nebo architektur projektu. Visual Studio neposkytuje uživatelské rozhraní pro změnu hodnoty, ale můžete ji změnit úpravou souboru csproj . Volba výchozího nastavení zajistí, že použijete nejnovější jazykovou verzi kompatibilní s cílovou architekturou. Získáte přístup k nejnovějším jazykovým funkcím kompatibilním s cílem projektu. Tato výchozí volba také zajišťuje, že v cílovém rozhraní nepoužíváte jazyk, který vyžaduje typy nebo chování modulu runtime. Volba novější verze jazyka, než je výchozí, může způsobit těžkou diagnostiku chyb při kompilaci a za běhu.
C# 14 je podporován pouze v .NET 10 a novějších verzích. C# 13 je podporován pouze v .NET 9 a novějších verzích. C# 12 se podporuje jenom v .NET 8 a novějších verzích. Použití novější verze jazyka C#, než je verze přidružená k cílové sadě TFM, není podporována.
Podrobnosti o tom, které verze .NET podporují verze sady Visual Studio, najdete na stránce kompatibility platformy Visual Studio. Na stránce Mono zkontrolujte kompatibilitu jazyka C# s verzemi jazyka C#.
Defaults
Kompilátor určuje výchozí hodnotu na základě těchto pravidel:
| Cíl | Verze | Výchozí verze jazyka C# |
|---|---|---|
| platforma .NET | 10.x | C# 14 |
| platforma .NET | 9.x | C# 13 |
| platforma .NET | 8.x | C# 12 |
| platforma .NET | 7.x | C# 11 |
| platforma .NET | 6.x | C# 10 |
| platforma .NET | 5.x | C# 9.0 |
| .NET Core | 3.x | C# 8.0 |
| .NET Core | 2.x | C# 7.3 |
| .NET Standard | 2.1 | C# 8.0 |
| .NET Standard | 2.0 | C# 7.3 |
| .NET Standard | 1.x | C# 7.3 |
| .NET Framework | vše | C# 7.3 |
Pokud váš projekt cílí na architekturu preview , která má odpovídající jazykovou verzi Preview, je použitá jazyková verze preview. V libovolném prostředí používáte nejnovější funkce, které jsou ve verzi Preview, aniž by to mělo vliv na projekty, které cílí na vydanou verzi .NET Core.
Referenční dokumentace jazyka C#
V následující tabulce jsou uvedeny všechny aktuální jazykové verze jazyka C#. Starší kompilátory nemusí rozumět každé hodnotě. Pokud nainstalujete nejnovější sadu .NET SDK, máte přístup ke všemu uvedenému.
| Hodnota | Význam |
|---|---|
preview |
Kompilátor přijímá veškerou platnou syntaxi jazyka z nejnovější verze Preview. |
latest |
Kompilátor přijímá syntaxi z nejnovější vydané verze kompilátoru (včetně podverze). |
latestMajornebo default |
Kompilátor přijímá syntaxi z nejnovější vydané hlavní verze kompilátoru. |
14.0 |
Kompilátor přijímá pouze syntaxi, která je součástí jazyka C# 14 nebo nižší. |
13.0 |
Kompilátor přijímá pouze syntaxi, která je součástí jazyka C# 13 nebo nižší. |
12.0 |
Kompilátor přijímá pouze syntaxi, která je součástí jazyka C# 12 nebo nižší. |
11.0 |
Kompilátor přijímá pouze syntaxi, která je součástí jazyka C# 11 nebo nižší. |
10.0 |
Kompilátor přijímá pouze syntaxi, která je součástí jazyka C# 10 nebo nižší. |
9.0 |
Kompilátor přijímá pouze syntaxi, která je součástí jazyka C# 9 nebo nižší. |
8.0 |
Kompilátor přijímá pouze syntaxi, která je součástí C# 8.0 nebo nižší. |
7.3 |
Kompilátor přijímá pouze syntaxi, která je součástí jazyka C# 7.3 nebo nižší. |
7.2 |
Kompilátor přijímá pouze syntaxi, která je součástí jazyka C# 7.2 nebo nižší. |
7.1 |
Kompilátor přijímá pouze syntaxi, která je součástí jazyka C# 7.1 nebo nižší. |
7 |
Kompilátor přijímá pouze syntaxi, která je součástí jazyka C# 7.0 nebo nižší. |
6 |
Kompilátor přijímá pouze syntaxi, která je součástí jazyka C# 6.0 nebo nižší. |
5 |
Kompilátor přijímá pouze syntaxi, která je součástí jazyka C# 5.0 nebo nižší. |
4 |
Kompilátor přijímá pouze syntaxi, která je součástí jazyka C# 4.0 nebo nižší. |
3 |
Kompilátor přijímá pouze syntaxi, která je součástí jazyka C# 3.0 nebo nižší. |
ISO-2nebo 2 |
Kompilátor přijímá pouze syntaxi, která je součástí ISO/IEC 23270:2006 C# (2.0). |
ISO-1nebo 1 |
Kompilátor přijímá pouze syntaxi, která je součástí ISO/IEC 23270:2003 C# (1.0/1.2). |
Poznámka:
Zadání s hodnotou se liší od vynechání default. Určení default používá nejnovější verzi jazyka, který kompilátor podporuje, bez zohlednění cílové architektury. Například sestavení projektu, který cílí na .NET 6 z aktuální verze sady Visual Studio 2022, používá jazyk C# 10, pokud není zadán Jazyk LangVersion , ale používá jazyk C# 12, pokud je jazyk LangVersion nastavený na default.