Desabilitar o suporte ao C # 6.0 no ReSharper

140

Ao usar o ReSharper, sugeriu "Habilitar o suporte ao C # 6.0 para este projeto". Eu tolicei clicar nele e agora, como anunciado, está me dando sugestões para o C # 6.0 - que então me dão erros, pois não estou usando o C # 6.0 neste projeto.

Como posso desabilitar o suporte ao C # 6.0, voltando ao que era antes? (De preferência, sem ter que ignorar individualmente sugestões específicas)

Mathieu Lomax
fonte
1
Isso aconteceu comigo, mas não me lembro de ter visto essa sugestão. Eu estava criando uma nova classe no meu projeto, implementando uma interface e sugerindo coisas do c # 6. Eu estava tão confuso ....
Charles Josephs

Respostas:

165

Clique no nó do projeto no Solution Explorer. Em seguida, procure na Grade da propriedade (F4). Você verá uma propriedade chamada "Nível de idioma C #". Defina como "Padrão" ou o nível de idioma desejado.

insira a descrição da imagem aqui

John Saunders
fonte
Isso não está disponível no VS2015 Preview, existem alternativas?
23115 Muçulmano Ben Dhaou 16/03/2015
13
Está disponível em Projeto => Propriedades => Compilar => Avançado.
Ilya Suzdalnitski 26/03/2015
1
Está disponível no RC de 2015, em projetos, não na solução.
Fontanka16
4
O @MDeSchaepmeester apenas seleciona todos os projetos para definir o nível de idioma uma vez para toda a solução. Cada projeto wil obter seu próprio arquivo .DotSettings
Jochen
1
FYI - Selecionar "Padrão" no VS2015 RTM ainda deixará o C # 6.0 ativado (aparentemente esse é o padrão no VS2015) - você precisa selecionar explicitamente o C # 5.0, se é isso que deseja.
Mr. T
59

Para desativá-lo de uma só vez na solução e não no nível do projeto, adicione abaixo em .sln.DotSettings

<s:String x:Key="/Default/CodeInspection/CSharpLanguageProject/LanguageLevel/@EntryValue">CSharp50</s:String>

desabilitaria os recursos do resharper 6.0 / erro

EDITAR

conforme comentários, caso você não possua o sln.DotSettingsarquivo, é necessário criar um com o conteúdo abaixo

<wpf:ResourceDictionary xml:space="preserve" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:s="clr-namespace:System;assembly=mscorlib" xmlns:ss="urn:shemas-jetbrains-com:settings-storage-xaml" xmlns:wpf="http://schemas.microsoft.com/winfx/2006/xaml/presentation"> 
    <s:String x:Key="/Default/CodeInspection/CSharpLanguageProject/LanguageLevel/@EntryValue">‌​CSharp50</s:String>
</wpf:ResourceDictionary>
harishr
fonte
12
Este deve ser marcado como a resposta, ele resolve o problema no nível da solução, ou seja, sem a necessidade de jogo por propriedade csproj
aateeque
2
Aqui está todo o conteúdo do arquivo sln .DotSettings, caso você precise recriá-lo como eu fiz. <wpf:ResourceDictionary xml:space="preserve" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:s="clr-namespace:System;assembly=mscorlib" xmlns:ss="urn:shemas-jetbrains-com:settings-storage-xaml" xmlns:wpf="http://schemas.microsoft.com/winfx/2006/xaml/presentation"> <s:String x:Key="/Default/CodeInspection/CSharpLanguageProject/LanguageLevel/@EntryValue">CSharp50</s:String></wpf:ResourceDictionary>
Jeson Martajaya #
1
@JesonMartajaya resposta atualizada para incluir seus comentários
harishr
1
Isso funciona para mim. Atenção: o primeiro trecho de código XML possui uma marca </ wpf: ResourceDictionary> inigualável no final.
Nick Smith
3
Atualizado: eu estava arrancando os cabelos tentando descobrir por que isso não estava funcionando. Acontece que eu havia alterado a configuração de idioma nas propriedades do projeto, o que cria um arquivo .csproj.DotSettings. Quando alterei a configuração de volta para "Padrão" de "CSharp50", "o" Padrão "nas configurações específicas do projeto estava substituindo a configuração" CSharp50 "em toda a solução. A remoção do arquivo .csproj.DotSettings e a reabertura da solução o corrigiram.
Nick Smith