在aspx页面中包含一个c#文件
我有一个aspx页面,它有一个指向c#类的@page指令。e、 g在aspx页面中包含一个c#文件,c#,asp.net,C#,Asp.net,我有一个aspx页面,它有一个指向c#类的@page指令。e、 g <@ Page Language="C#" EnableSessionState="true" ValidateRequest="False" Inherits="MyClass" %> MyClass扩展了Page,它是该aspx页面的代码隐藏类 现在我想向aspx页面添加另一个类。这个类进行一些处理,如果满足某些条件,它会将用户重定向到另一个页面。它将在上述指令之前调用。我尝试添加另一个@Page指令,但得
<@ Page Language="C#" EnableSessionState="true" ValidateRequest="False" Inherits="MyClass" %>
MyClass扩展了Page,它是该aspx页面的代码隐藏类
现在我想向aspx页面添加另一个类。这个类进行一些处理,如果满足某些条件,它会将用户重定向到另一个页面。它将在上述指令之前调用。我尝试添加另一个@Page指令,但得到了一个未知错误(字面上)。我认为每个aspx页面只能有一个代码隐藏类,所以我在添加另一个代码时出错了。用谷歌搜索这样的问题并没有真正帮助我找到答案
那么,如何将另一个c#类添加到同一个aspx页面
谢谢。您可以添加另一个扩展Page类的类,然后添加新创建的类作为网页的父类
public class MyBaseClass : System.Web.UI.Page
{
protected override void OnLoad(EventArgs e)
{
// ... add custom logic here ...
// Be sure to call the base class's OnLoad method!
base.OnLoad(e);
}
}
public class WebForm1 : MyBaseClass
{
private void Page_Load(object sender, System.EventArgs e)
{
// Put user code to initialize the page here
}
...
}
看到这个了吗
@rahul:我以你为榜样。在我的aspx页面中,我将继承设置为WebForm1。所发生的事情是,调用方法的顺序与我预期的不同:1)WebForm1.OnInit,2)MyBaseClass.OnInit,3)WebForm1.Page\u加载,4)MyBaseClass.Page\u加载。这是正确的行为吗?我更喜欢MyBaseClass中的逻辑先运行。谢谢