Dot*_*ude 5 c# asp.net user-controls
我可能误解了base.OnLoad(e);我的理解是这个语句将调用它所调用的类的基类的OnLoad方法.但是,当我使用调试器逐步执行代码时,我看到不同的结果.
public abstract class BaseUC : System.Web.UI.UserControl
{
protected override void OnLoad(EventArgs e)
{
base.OnLoad(e);
SomeAbstractMethod();
}
}
Run Code Online (Sandbox Code Playgroud)
在ascx.cs中的具体类
public partial class MyUserControl : BaseUC
{
protected void Page_Load(object sender, EventArgs e)
{
//On Load logic
}
}
Run Code Online (Sandbox Code Playgroud)
我有一个断点base.OnLoad(e).当我按F11(步入)时,调试器将我带到Page_LoadMyUserControl,因此控制流程为:
BaseUC.OnLoad()
MyUserControl.Page_Load()
BaseUC.SomeAbstractMethod()
Run Code Online (Sandbox Code Playgroud)
有人能解释一下这里发生了什么吗?
sis*_*sve 11