How do I reference an ASP.net MasterPage from App_Code

后端 未结 3 1375
暖寄归人
暖寄归人 2020-12-18 10:16

I\'m working on a .net 3.5 site, standard website project.

I\'ve written a custom page class in the sites App_Code folder (MyPage).

I also have a master page

3条回答
  •  春和景丽
    2020-12-18 10:40

    I've tended to do the following with Web Site projects:

    In App_Code create the the following:

    BaseMaster.cs

    using System.Web.UI;
    
    public class BaseMaster : MasterPage
    {
        public string MyString { get; set; }
    }
    

    BasePage.cs:

    using System;
    using System.Web.UI;
    
    public class BasePage : Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            if (null != Master && Master is BaseMaster)
            {
                ((BaseMaster)Master).MyString = "Some value";
            }
        }
    }
    

    My Master pages then inherit from BaseMaster:

    using System;
    
    public partial class Masters_MyMasterPage : BaseMaster
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!string.IsNullOrEmpty(MyString))
            {
                // Do something.
            }
        }
    }
    

    And my pages inherit from BasePage:

    public partial class _Default : BasePage
    

提交回复
热议问题