【问题标题】:Why i can not acces the protected properties in my web application为什么我无法访问我的 Web 应用程序中的受保护属性
【发布时间】:2011-02-13 07:35:53
【问题描述】:

我有一个 Web 应用程序,它有一个 Base 类,我在其中定义了网页共有的所有属性。基类扩展 System.Web.UI.Page

此外,我有一个基本用户控件类,其中定义了用户控件共有的所有属性。基本用户控件扩展 System.Web.UI.UserControl

两个基类中的所有属性都受到保护。

所有网页都扩展了基类。

所有控件都扩展了基本用户控件类。

问题是我无法从用户访问基类中定义的属性

控件,我不能在基本用户控件中扩展两个类

问题是

如何从用户控件中访问 Base 类中定义的属性?

我希望我已经清楚了

谢谢

【问题讨论】:

    标签: inheritance access-modifiers


    【解决方案1】:

    如果您希望能够弄乱您自己的类或其子类之外的属性,那么“受保护”可能是错误的访问级别。您可以使用“受保护的朋友”(在 vb 中)或“受保护的内部”(c#)访问来做您需要的事情。控件的类和页面的基类需要在同一个程序集中,但这对您来说可能不是问题。

    【讨论】:

    • 取决于你在做什么,以及为什么你需要访问类之外的受保护属性。通常,如果您发现自己需要它,则您的访问权限设置得太严格了。不过,我必须查看代码才能知道这里是否是这种情况。
    猜你喜欢
    • 1970-01-01
    • 2018-07-05
    • 2020-09-01
    • 1970-01-01
    • 2012-12-28
    • 2014-09-13
    • 1970-01-01
    • 2018-11-27
    • 1970-01-01
    相关资源
    最近更新 更多