.net 如何正确地为代码度量标记设计器代码以忽略它

.net 如何正确地为代码度量标记设计器代码以忽略它,.net,winforms,windows-forms-designer,.net,Winforms,Windows Forms Designer,我将InitializeComponent的所有实例都标记为 <CodeDom.Compiler.GeneratedCode("WinForms Designer", "")> 因此,这些将不会在代码度量分析期间显示。生成的其余代码仍然被认为是我的,特别是每个控件的setter和getter。用GeneratedCode标记整个部分类(winforms designer部分)会使整个类从代码度量中消失,甚至我的自定义逻辑也会消失。我正在使用Visual Studio 2010。

我将InitializeComponent的所有实例都标记为

<CodeDom.Compiler.GeneratedCode("WinForms Designer", "")>


因此,这些将不会在代码度量分析期间显示。生成的其余代码仍然被认为是我的,特别是每个控件的setter和getter。用GeneratedCode标记整个部分类(winforms designer部分)会使整个类从代码度量中消失,甚至我的自定义逻辑也会消失。我正在使用Visual Studio 2010。

代码度量不会故意忽略表单类,请参见

为Windows窗体生成的代码不会被忽略,因为它是代码 开发人员可以看到和更改


也许扩展可以满足您的需要。

控件的setter和getter是我无法看到或更改的,因此当我在代码度量结果中单击它们时,什么也不会发生。看起来微软有时在逻辑上有问题。我会尝试你建议的替代方案,让你知道它是如何运行的。安装后,遇到了一些问题,解决了这些问题,现在是我的主要项目中的两个著名错误,CA0055和CA0052。解决方案中的另外两个项目通过了分析,但我不需要它。我会试着从开发者那里得到一些帮助。是的,并不是说不忽略表单类的决定是件好事,只是它们确实如此。代码度量和代码分析是两种不同的功能。在Matthias Friedrich的代码度量查看器中,单击“分析解决方案”以获取代码度量。我同意它应该被称为Calculate Code Metrics以符合Visual Studio的措辞。我的项目文件中似乎有(一个空的PropertyGroup),这使代码指标无法正常工作。现在是43K行代码,而不是14K。看起来代码度量查看器忽略了InitializeComponent上的GeneratedCode属性。因此,情况比微软内置工具更糟。