如何避免 .aspx.designer.cs 文件中的 CA1051:DoNotDeclareVisibleInstanceFields?

Posted

技术标签:

【中文标题】如何避免 .aspx.designer.cs 文件中的 CA1051:DoNotDeclareVisibleInstanceFields?【英文标题】:How to avoid CA1051:DoNotDeclareVisibleInstanceFields in .aspx.designer.cs files? 【发布时间】:2012-05-07 08:34:54 【问题描述】:

使用 Visual Studio 2010 中的内置代码分析,我在 aspx 文件的设计器文件的所有字段中都获得了 CA1051。

Warning 111 
CA1051 : Microsoft.Design : Because field 'Product.PageTitle' is visible 
        outside of its declaring type, change its accessibility to private 
        and add a property, with the same accessibility as the field has 
        currently, to provide access to it. 
Product.aspx.designer.cs    22

我不想删除其他文件的规则。 我不想手动编辑生成的设计器文件。

我能否以其他方式避免此消息,然后在错误列表中逐个字段地抑制消息?

【问题讨论】:

【参考方案1】:

将 Product.PageTitle 设为私有。如果您想在 Product 类之外公开它,请为其创建一个属性。

目前情况:

public/internal string PageTitle;

期望的情况:

public/internal string PageTitle  get; set; 

【讨论】:

//---------------------------------------- -------------------------------------- // //这段代码是由工具生成。 // // 对此文件的更改可能会导致不正确的行为,如果重新生成代码,则会丢失 // // 代码。 // 自动生成> //---------------------------------------- -------------------------------------------------- /// 自动生成的字段。 /// 修改从设计器文件到代码隐藏文件的移动字段声明。 是的,但如果我不需要,我不想手动编辑所有设计器文件。我认为在设计器文件中有声明是一件好事。添加一个新的局部类似乎有点矫枉过正。我希望有一些替换规则或匹配模式可以用来简单地避免生成的文件。

以上是关于如何避免 .aspx.designer.cs 文件中的 CA1051:DoNotDeclareVisibleInstanceFields?的主要内容,如果未能解决你的问题,请参考以下文章

vs2013怎么home创建一个aspx文件

如何避免 objcopy 炸毁文件?

如何避免这个mysql查询的文件排序

如何锁定文件并避免在写入时读取

如何避免头文件被重复包含?

编写拼花文件时如何避免空文件?