Resharper:在C#7.0功能上启用警告?

fdm*_*ion 1 resharper c#-7.0

我的问题与我在网上找到的每个问题完全相反.

我想在Resharper中启用 C#7.0警告/错误(在VS2017中运行,今天刚安装的版本.)

我需要这样做,因为我正在处理的项目将发布到我的工作场所的服务器,当使用C#7.0功能时,他们的CI会抛出致命错误R# C# 7.0 language feature,因此我无法使用它们(他们不会接受任何项目他们的CI失败了.)

他们在CI中使用Resharper CLI.所以我想让我的Resharper抛出相同的错误,这样我就可以快速找到并消除C#7.0的功能.我的Resharper显示项目是干净的(除了一些小的"它可能是一个问题,但它不适合我"),所以当我运行代码分析时,我没有致命的错误甚至是关于C#7.0的警告.

到目前为止我遇到的每个问题都是询问如何禁用有关C#7.0的警告.我的Resharper没有发出任何警告或错误,而我们的CI则是.

我查看了选项,但找不到任何明显的"C#7.0"选项.我找了类似"最大支持语言/抛出错误,如果使用更高版本的语言功能/等",但我似乎无法找到任何东西.

编辑:Web.config codedom部分:

<system.codedom>
  <compilers>
    <compiler language="c#;cs;csharp" extension=".cs" type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.CSharpCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=1.0.2.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" warningLevel="4" compilerOptions="/langversion:6 /nowarn:1659;1699;1701" />
  </compilers>
</system.codedom>
Run Code Online (Sandbox Code Playgroud)

它肯定设置为语言版本6 ...

Pie*_*ers 7

您可以通过右键单击项目来配置构建引擎用于每个项目的C#版本,选择Properties,选择该Build部分,单击Advanced...,设置Language versionCI服务器使用的任何版本.执行此操作后,在本地构建任何C#7.0功能时,构建将失败.

在此输入图像描述

或者,您可以尝试升级CI服务器以使用C#7.0.

  • @DavidArno在完美的世界里,是的.在官僚主义的现实中,没有那么多有用的答案.:-) (3认同)
  • @DavidArno你是对的,但我确信更改CI服务器会更加困难,这会影响使用它的每个人,而不仅仅是更改你自己的项目语言版本. (2认同)