【问题标题】:Attribute Missing from Generated WinForm Code生成的 WinForm 代码中缺少属性
【发布时间】:2011-02-15 15:51:44
【问题描述】:

Visual Studio 创建的任何 winform 的 *.Designer.cs 文件中的方法定义都没有使用 [GeneratedCodeAttribute] 属性进行修饰。因此,在我运行代码度量或代码分析时会分析生成的代码。有谁知道为什么没有提供该属性(毕竟它生成的代码)?自己添加是否安全(重新生成代码时它会消失,还是仅在方法体内发生)?如果我要添加它,Visual Studio 2010 的正确工具和版本字符串应该是什么?

【问题讨论】:

    标签: c# visual-studio winforms code-generation code-analysis


    【解决方案1】:

    嗯,这很棘手,它实际上不是自动生成的代码。 Designer.cs 文件由项目项模板生成。 Windows 窗体设计时序列化程序仅重新生成 InitializeComponent() 方法体并将控件声明附加到文件底部。

    这并不能真正帮助您解决问题。我能想到的最有效的解决方法是简单地编辑模板。在我的机器上,即 c:\program files\microsoft visual studio 10.0\common7\ide\itemtemplatescache\csharp\windows forms\1033\form.zip\form.designer.cs,将属性放在方法之前。你使用什么并不重要,没有工具会期望这个属性存在。

    【讨论】:

    • 谢谢!我喜欢修改模板的想法;我将使用模板名称作为工具名称。
    猜你喜欢
    • 2021-10-26
    • 2014-02-05
    • 1970-01-01
    • 1970-01-01
    • 2011-01-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多