Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/35.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在aspx页面中包含一个c#文件_C#_Asp.net - Fatal编程技术网

在aspx页面中包含一个c#文件

在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指令,但得

我有一个aspx页面,它有一个指向c#类的@page指令。e、 g

<@ 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中的逻辑先运行。谢谢