在ReSharper中禁用C#6.0支持


140

在使用ReSharper时,它建议“为此项目启用C#6.0支持”。我愚蠢地单击了它,现在如广告所示,它为我提供了有关C#6.0的建议-然后由于我没有在该项目中使用C#6.0而给了我错误。

如何禁用C#6.0支持,将其恢复为以前的状态?(最好不必单独忽略特定建议)


1
这只是发生在我身上,但我不记得看到那个建议了。我在项目中创建一个新类,实现一个接口,并提出了c#6的建议。我对此感到十分困惑....
查尔斯·约瑟夫

Answers:


165

单击解决方案资源管理器中的项目节点。然后在属性网格(F4)中查找。您将看到一个名为“ C#语言级别”的属性。将其设置为“默认”或所需的语言级别。

在此处输入图片说明


这在VS2015 Preview中不可用,还有其他选择吗?
穆斯林本·达欧(Ben Dhaou)2015年

13
在Project => Properties => Build => Advanced下可用。
Ilya Suzdalnitski 2015年

1
在2015 RC中可用,适用于项目,而不适用于解决方案。
Fontanka16年

4
@MDeSchaepmeester只需多重选择所有项目即可为整个解决方案设置一次语言级别。每个项目都会得到它自己的.DotSettings文件
Jochen

1
仅供参考-在VS2015 RTM中选择“默认”仍将启用C#6.0(显然是VS2015中的默认)-如果需要,您需要明确选择C#5.0。
T先生

59

要在解决方案中一次禁用它,而不是在每个项目级别一次禁用它,请在下面添加 .sln.DotSettings

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

它将禁用resharper 6.0功能/给您错误

编辑

根据注释,如果您根本没有该sln.DotSettings文件,则需要创建一个包含以下内容的文件

<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>

12
应该将其标记为答案,它可以在解决方案级别解决问题,即无需设置每个csproj属性
aateeque 2015年

2
这是sln .DotSettings文件的全部内容,以防您需要像我一样重新创建它。<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 2015年

1
@JesonMartajaya更新了答案以包含您的评论
harishr

1
这对我有用。但请注意:第一个XML代码段的末尾有一个不匹配的</ wpf:ResourceDictionary>标签。
尼克·史密斯

3
更新:我正在拔头发,试图弄清楚为什么它不起作用。原来,我已经更改了项目属性中的语言设置,该属性创建了一个.csproj.DotSettings文件。当我将设置从“ CSharp50”改回“默认”时,项目特定设置中的“默认”将覆盖解决方案范围的“ CSharp50”设置。删除.csproj.DotSettings文件,然后重新打开解决方案,将其修复。
尼克·史密斯
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.