我考虑开始使用代码合约 http://msdn.microsoft.com/en-us/devlabs/dd491992.aspx在我的代码库中。
我已经使用代码分析并启用了所有规则并实现了零警告的目标。
然而,当使用Contract.Requires(parameter != null)
我从代码分析中收到警告,即 CA1062:
CA1062:Microsoft.Design:在外部可见方法“Foo”中,在使用参数“parameter”之前验证它。
不幸的是,我不想禁用该规则,因为我发现它很有用。但我也不想压制每一个错误的发生。
有解决办法吗?
为了解决这个问题,需要执行以下步骤:
- 在代码分析中禁用 CA1062 以消除代码分析中的警告。目前还没有办法让代码分析理解
Contract.Requires
.
- 在项目的“代码合同”窗格中启用“执行静态合同检查”。
- 启用“隐式非空义务”
- 将警告级别设置为“hi”(重要的是,这就是我所缺少的!)
第 1 步消除了 CA 警告,第 2 步到第 4 步启用了至少等效的代码合约警告。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)