演练:对托管代码进行代码缺陷分析
更新: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”进行签名。 |
|
排除代码分析警告
排除代码缺陷警告
在“错误列表”中选择其余的警告,然后右击并选择“禁止显示消息”。
重新生成项目。
将生成项目,并且不出现任何警告或错误。