更新:2007 年 11 月
在本演练中,使用代码分析工具对托管项目进行代码缺陷分析。
本演练将引导您逐步完成使用代码分析工具分析 .NET 托管代码程序集是否符合 Microsoft .NET Framework 设计准则的过程。
在本演练中,您:
- 分析并更正代码缺陷警告。
先决条件
- Visual Studio Team System Development Edition. 
- ManagedDemo 示例 的副本。 
分析托管项目是否存在代码缺陷
- 在 Development Edition 中,打开 ManagedDemo 解决方案。 
- 在“解决方案资源管理器”中选择 ManagedDemo 项目。 
- 在“项目”菜单上单击“属性”。 - 将显示 ManagedDemo 属性页。 
- 单击“代码分析”。 
- 选择“启用代码分析”(定义 CODE_ANALYSIS 常数)。 
- 在“文件”菜单上,单击“保存选定项”,然后关闭 ManagedDemo 属性页。 
- 在“生成”菜单上单击“生成 ManagedDemo”。 - ManagedDemo 项目生成警告在“错误列表”和“输出”窗口中报告。 
更正代码分析规则冲突
- 在“视图”菜单上单击“错误列表”。 - 根据选择的开发人员配置文件,您可能必须指向“视图”菜单上的“其他窗口”,然后单击“错误列表”。 
- 在“解决方案资源管理器”中,单击“显示所有文件”。 
- 下一步,展开“配置”节点,然后打开 AssemblyInfo.cs 文件。 
- 使用下表更正警告: 
| 警告 | 更正警告 | 
|---|---|
| 用 CLSCompliantAttribute 标记程序集:Microsoft.Design:应使用 CLSCompliantAttribute 来标记“ManagedDemo”,其值应为 true。 | 
 | 
| 
 | |
| 用 SerializableAttribute 标记 ISerializable 类型:Microsoft.Usage:将 [Serializable] 属性添加到类型“demo”,原因是此类型实现了 ISerializable。 | 
 | 
| 实现标准异常构造函数:Microsoft.Design:向此类添加下面的构造函数:public demo(String) | 
 | 
| 实现标准异常构造函数:Microsoft.Design:向此类添加下面的构造函数:public demo(String, Exception) | 
 | 
| 实现标准异常构造函数:Microsoft.Design:向此类添加下面的构造函数:protected demo(SerializationInfo, StreamingContext) | 
 | 
| 实现标准异常构造函数:Microsoft.Design:向此类添加下面的构造函数:public demo() | 
 | 
| 标识符应具有正确的后缀:Microsoft.Naming:重命名“testCode.demo”使其以“Exception”结尾。 | 
 | 
| 标识符的大小写应该正确:Microsoft.Naming:更正命名空间名称“testCode”的大小写 | 
 | 
| 标识符的大小写应该正确:Microsoft.Naming:更正成员名称“item”的大小写。 | 
 | 
| 程序集应具有有效的强名称:用强名称密钥对“ManagedDemo”进行签名。 | 
 | 
排除代码分析警告
排除代码缺陷警告
- 在“错误列表”中选择其余的警告,然后右击并选择“禁止显示消息”。 
- 重新生成项目。 - 将生成项目,并且不出现任何警告或错误。