0

ここに、マスターページの抽象クラスがあります

public abstract class BaseMaster2 : System.Web.UI.MasterPage
{
    public abstract List<string> ElementIdsToHideForPrint
    {
        get;
        set;
    }
}

そして、私は私のマスターマスターページの1つを持っています:

public partial class Template_Base2 : BaseMaster2
{
    private List<string> _elementsIdsToHide;
    public override List<string> ElementIdsToHideForPrint
    {
        get { return _elementsIdsToHide; }
        set { _elementsIdsToHide = value; }
    }
}

テスト サーバーではすべて問題なく動作しますが、これらすべてを運用サーバーに配置すると、実行時エラーが発生します。サーバーにコードを段階的に配置して、何がこのエラーをスローするかを確認しようとしましたが、マスターページにオーバーライドという単語がなくてもすべて機能するようです

public List<string> ElementIdsToHideForPrint { ... }

この実行時エラーがスローされる理由は何ですか?

ps: 読みやすくするために、ここでコードを短くしました。

そのマスター ページを含む自分のページで初期化します。

protected void Page_Load(object sender, EventArgs e)
{
    SetElementsIdsForPrintHideShow();
}

private void SetElementsIdsForPrintHideShow()
{
    BaseMaster2 _master = this.Master as BaseMaster2;
    List<string> _ids = new List<string>();

    //hide
    _ids.Add("btnPrinterFriendly"); //action buttons top 
    _master.ElementIdsToHideForPrint = _ids;
}
4

0 に答える 0