CA0001
更新:2007 年 11 月
在没有指示预期错误条件的托管代码分析工具中引发了异常。
此错误在下列情况下生成:
自定义规则中存在缺陷
在这种情况下,此错误将报告该规则和目标。示例错误看起来类似于以下形式:
内部错误 CA0001:规则=Microsoft.Usage#CA2214,目标=B..ctor(): 未将对象引用设置到对象的实例。
有关更多诊断信息,请查看 \obj 文件夹中的 CodeAnalysisReport.xml。该报告列出异常类型、堆栈、类型、消息以及所有内部异常的堆栈。上一个异常的示例 CodeAnalysisReport.xml 报告看起来类似于以下形式:
<Exception Keyword="CA0001" Kind="Rule" TypeName="DoNotCallOverridableMethodsInConstructors" Category="Microsoft.Usage" CheckId="CA2214" Target="B..ctor()">
<Type>System.NullReferenceException</Type>
<ExceptionMessage>Object reference not set to an instance of an object.</ExceptionMessage>
<StackTrace> at Microsoft.FxCop.Rules.Usage.DoNotCallOverridableMethodsInConstructors.CheckCallees(Method method, Boolean isCallVirt) in d:\rules\DoNotCallOverridableMethodsInConstructors.cs:line 107 at Microsoft.FxCop.Rules.Usage.DoNotCallOverridableMethodsInConstructors.CheckCallees(Method method, Boolean isCallVirt) in d:\rules\DoNotCallOverridableMethodsInConstructors.cs:line 128 at Microsoft.FxCop.Rules.Usage.DoNotCallOverridableMethodsInConstructors.Check(Member member) in d:\rules\DoNotCallOverridableMethodsInConstructors.cs:line 58 at Microsoft.FxCop.Engines.Introspection.AnalysisVisitor.CheckMember(Member member, NodeBase target) in d:\Engines\Introspection\AnalysisVisitor.cs:line 743</StackTrace>
</Exception>
</Exceptions>
在上一个报告中,在 DoNotCallOverridableMethodsInConstructors.cs 文件的第 107 行发生了异常。其他所有堆栈跟踪都显示导致该异常的执行路径。
托管代码分析工具中存在未知的缺陷
在这种情况下,会在 CodeAnalysisReport.xml 中出现错误,但不显示 Rule、TypeName 或 Category 属性,并且会在控制台上显示以下消息:
内部错误 CA0001: 未将对象引用设置到对象的实例。
尝试重写报告错误的行或围绕该行周围的若干行。如果这不起作用,请与 Microsoft 产品支持服务部门联系。