Start Debugging
2025-01-01 Atualizado 2025-01-02 csharp-13csharpdotnetdotnet-9 Edit on GitHub

Como mudar para C# 13

Como corrigir 'Feature is not available in C# 12.0' e mudar seu projeto para C# 13 alterando o target framework ou definindo LangVersion no seu arquivo .csproj.

Ao experimentar os recursos do C# 13, é possível que você encontre erros semelhantes a estes:

Feature is not available in C# 12.0. Please use language version 13.0 or later.

ou

Error CS8652: The feature ‘’ is currently in Preview and unsupported. To use Preview features, use the ‘preview’ language version.

Há duas formas de resolver esse erro:

<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
    <OutputType>Exe</OutputType>
    <TargetFramework>net9.0</TargetFramework>
    <ImplicitUsings>enable</ImplicitUsings>
    <Nullable>enable</Nullable>
    <LangVersion>preview</LangVersion>
  </PropertyGroup>
</Project>

A versão da linguagem está acinzentada e não pode ser modificada

A versão da linguagem não pode ser alterada pela janela Properties do projeto. A versão está vinculada à versão do target .NET framework do seu projeto e será atualizada de acordo.

Se você precisar sobrescrever a versão da linguagem, deve fazê-lo como especificado acima, modificando o arquivo .csproj e especificando o LangVersion.

Lembre-se de que cada versão da linguagem C# tem uma versão mínima suportada de .NET. C# 13 é suportado apenas em .NET 9 e versões mais recentes. C# 12 é suportado apenas em .NET 8 e versões mais recentes.

Opções de LangVersion do C#

Além dos números de versão, existem certas palavras-chave que podem ser usadas para especificar a versão da linguagem do seu projeto:

Não é o que você está procurando?

Talvez você esteja procurando mudar para uma versão diferente do C#, nesse caso:

Comments

Sign in with GitHub to comment. Reactions and replies thread back to the comments repo.

< Voltar