在子页面中扩展MasterPage类

时间:2011-10-11 09:45:25

标签: asp.net master-pages code-behind

我正在用ASP.NET / C#编写一个网站。我正在使用母版页来简化布局设计。

我有一个BaseMasterPage.master母版页,它在.master.cs文件中有一些代码,其中定义了一个BaseMasterPage类(扩展System.Web.UI.MasterPage)及其中的一些方法(page_load,.. )。我想要做的是,有一个子页面,其中包含扩展BaseMasterPage的相关ChildPage类,以便重用BaseMasterPage中的一些方法。

但这会引发一些错误。例如,ASP.child_aspx.GetTypeHashCode():没有找到覆盖的匹配方法,与ASP.child_aspx.ProcessRequest(System.Web.HttpContext)相同,ASP.login_aspx没有实现字段System.Web.IHttpHandler.IsReusable等等

我对ASP.NET很陌生,所以我想这只是一个初学者的错误......有人能告诉我我做错了吗?

提前感谢您的回答。

2 个答案:

答案 0 :(得分:1)

Pages和MasterPages是不同类型的东西。您遇到问题,因为ASPX页面无法从System.Web.UI.MasterPage继承。它应该最终从System.Web.UI.Page继承。

因此,让主页面和内容页面(aspx)继承自同一基类的计划将无效。

答案 1 :(得分:0)

我认为您可以像这样定义子页面的类:

public partial class默认值:ChildPageClass。

在您的ChildPageClass中:

public class ChildPageClass:YourMasterPageClass。

你能试试吗?

我不确定这个解决方案。