#

ASP.Net Webforms: den Übergeordneten SiteMaster ermitteln
 
Wie ermittelt man die umfassende Master-Seite einer Webseite?
 
Lösung:
Aus einer Detail-Webseite in ASP.Net Webforms liegt die umfassende Masterpage direkt unter der me.Master Eigenschaft.
Ein Abfragen läuft wie hier:

Dim ctlParent_Sitemaster As SiteMaster
ctlParent_Sitemaster = Master

 
In Visual Studio

 
Code-Beispiel für vb.net Asp.net, Webforms

Private Sub fl_Userfriendly_Path_Rewrite_Output()
'------------< fl_Userfriendly_Path_Rewrite_Output >------------
'*write Userfriendly path to URL in Browser
'-< get parent breadcrumb path >
Dim ctlParent_Sitemaster As SiteMaster
ctlParent_Sitemaster = Master
Dim sPath As String = ctlParent_Sitemaster._sPath_URL_Friendly
sPath = HttpUtility.HtmlEncode(sPath)
Response.RedirectLocation = "https://rue25.de/test/123"
'-</ get parent breadcrumb path >
'------------</ fl_Userfriendly_Path_Rewrite_Output >------------
End Sub

 
 
Auszug der Werte im Breakpoint.
Zur Laufzeit ist in Master die Master-Datei zur Verfügung

+

Master

{ASP.site_master}

System.Web.UI.MasterPage

 

MasterPageFile

"/Site.Master"

String

 
Aber das Parent Element ist hingegen leer

Parent

Nothing

System.Web.UI.Control

 

 
 
In ASP.Net definiert man im Kopf einer ASPX.Datei, ob eine Umfassende Masterpage um die Datei geladen werden soll.
Dadurch wird beim Aufruf erst die Datei Site.Master aufgerufen und anschliessend innerhalb in einem Content-Bereich die

 
 
Ein falscher Zugriff ist über die Parent eigenschaft.
Diese ist nämlich null, da nicht der Sitemaster die Unterseiten als Usercontrols oder Webparts lädt, sondern die Unterseite schon im Header die Masterpage ausweist.
Hier: Parentist null
Mobile

.