小编lar*_*rry的帖子

代码合同试图获取构建错误而不是警告

我试图通过代码契约获得VS2010 Ultimate以生成错误而不是警告.

我有这个简单的测试程序:

using System.Diagnostics.Contracts;

namespace MyError
{
  public class Program 
  {
     static void Main(string[] args)
     {
         Program prog = new Program();
         prog.Log(null);
     }

     public void Log(string msg)
     {
         Contract.Requires(msg != null);
     }
  }
}
Run Code Online (Sandbox Code Playgroud)

它正确地确定违反了合同:

C:\...\Program.cs(10,13): warning : CodeContracts: requires is false: msg != null
Run Code Online (Sandbox Code Playgroud)

在我的csproj文件中有Debug的这个属性字段:

TreatWarningsAsErrors>true

我是否还需要在项目设置中设置其他内容才能将这些内容变为错误?

code-contracts

7
推荐指数
1
解决办法
546
查看次数

标签 统计

code-contracts ×1