我刚刚通过继承为我的页面创建了一个基类System.Web.UI.Page
:
public abstract class PageBase : System.Web.UI.Page
{
...
}
当我注意到您还可以在 ASP.NET 视图中声明基页时:
<%@ Page Language="C#" CodeFileBaseClass="PageBase.cs" CodeFile="page.aspx.cs"
Inherits="page" %>
有人可以解释这两种方法的优缺点吗?您什么时候会使用其中一种而不是另一种,或者它们都是相同的?如果同时使用两者会发生什么?
CodeFileBaseClass
, CodeFile
, Inherits
与继承一起工作,而不是代替继承。
例如,指定CodeFile="page.aspx.cs"
没有page.aspx.cs
现有的将导致:
Parser Error Message: The file '/page.aspx.cs' does not exist.
假设page.aspx.cs
存在,指定CodeFileBaseClass="PageBase.cs"
没有PageBase.cs
现有的将导致:
Parser Error Message: Could not load type 'PageBase.cs'.
另一方面,您可以继承自PageBase
without指定CodeFileBaseClass
属性。但是,从基类引用页面上的控件时,这可能会导致意外行为。
引用自Microsoft 的 @Page MSDN 文档 http://msdn.microsoft.com/en-us/library/ydy4x04a.aspx:
代码文件基类
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)