Also ... Ich muss jemanden alten (2010) .Net 3.5 C# Code arbeiten ... und natürlich hatte der Entwickler nicht mehr die Projektdateien nur die Quelle ...Access Master Page-Klasse in C# .Net 3.5
Lange Geschichte ist Code versucht, auf eine Eigenschaft der Masterseitenklasse zuzugreifen und das sieht aus wie es sollte funktionieren nach allem, was ich finden kann, aber es ist nicht.
Beispiel des Master Code hinter:
public partial class myMasterPage : System.Web.UI.MasterPage
{
private string pageName = "";
public string PageName
{
get { return PageName; }
set { pageName = value; }
}
private int pageID;
public int PageID
{
get { return pageID; }
set { pageID = value; }
}
}
Einer der Seiten Code:
<%@ Page Title="" Language="C#" MasterPageFile="~/MasterPage.master" AutoEventWireup="true" Inherits="Help" Codebehind="Help.aspx.cs" %>
<%@ MasterType TypeName="ISLMasterPage" %>
<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">
Und schließlich der Code hinter für die Seite:
public partial class Help : BasePage
{
protected void Page_PreInit(object sender, EventArgs e)
{
base.PageID = 1;
Master.PageID = 1;
}
}
Ich habe tr ied die Mastertype zu virtuellen Pfad zu ändern ... nichts ... Fehler Ich erhalte ist:
E'System.Web.UI.MasterPage ‚PageID‘ enthält keine Definition für enthalten‘und keine Erweiterungsmethode ‚PageID‘ ein erstes Argument vom Typ ‚System.Web.UI.MasterPage‘ akzeptieren konnte gefunden werden (möglicherweise fehlt eine using-Direktive oder ein Assemblyverweis?)
mir so offensichtlich es ist, dass es nicht Abholung die Tatsache, dass wir den Code dahinter haben wollen.
Ich vermute, das ist etwas offensichtlich, aber ich habe meinen Code nie so organisiert.
verdächtig erben: '<% @
In der Basepage Klasse so etwas wie dies dort sein könnte MasterType TypeName = "ISLMasterPage"%> '. Scheint, dass die Seite einen abgeleiteten Typ als die Vorgabeseite erwartet ... – user1429080