【发布时间】:2010-07-24 23:15:03
【问题描述】:
运行代码分析时,我在构建我的 .NET 项目时收到以下无用的错误。它既发生在 Visual Studio 中,也发生在使用 MSBuild 从命令行构建。
* 1 total analysis engine exceptions.
MSBUILD : error : CA0001 : The given key was not present in the dictionary.
关于什么是坏的有什么想法吗?
编辑:
找到导致它的代码。我的代码中有一个方法。
Public Function Generate(ByVal input As XDocument) As XDocument
' My code
End Function
如果我添加以下行作为第一行代码,错误就会开始发生,如果我删除它,错误就会停止。
Contract.Requires(Of ArgumentNullException)(partCover IsNot Nothing, "input")
这并没有什么意义,因为我在整个项目中都在使用代码合同。此方法与其他方法的唯一不同之处在于它包含大约 200 行 XML 文字。该方法将输入文档转换为另一种类似于 XSLT 的 XML 格式。我的猜测是它与此有关。
【问题讨论】:
-
在 VS2017 中也可以看到,其代码在 VS2013 中没有显示。在我们的例子中,我们通过意外应用了错误的规则集触发了这一点。
标签: .net visual-studio-2010 code-analysis fxcop