Benutzer mit den meisten Antworten
Server.Transfer und der Kontext der Anforderung

Frage
-
Hallo NG!
Nach einem Server.Transfer habe ich das Problem, dass die Page, zu der transferiert wird, im Kontext der Page ausgeführt wird, die den Transfer ausgelöst und nicht in ihrem eigenen Kontext. Ich habe folgende Dateistruktur:
Index.aspx
Web.config
Directory1
- SubIndex.aspx
- Web.config
Directory2
- ...
Die Index.aspx im Wurzelverzeichnis führt einen Server.Transfer("Directory1/SubIndex.aspx") aus. Das klappt zwar, doch für diesen Seitenaufruf bleibt der Ausführungskontext in der Ebene der Datei Index.aspx, es wird die Web.config im Wurzelverzeichnis eingelesen. Erst nach einem Postback der SubIndex.aspx wechselt offenbar der Ausführungskontext zu Directory1/ und es gelten die Konfigurationen der Directory1/Web.config.
Ist es möglich, diesen Ausführungskontext zu beeinflussen, so dass die Seite SubIndex.aspx gleich nach dem Transfer im Kontext des Verzeichnisses Directory1 ausgeführt wird?
Viele Grüße
Jan
Antworten
-
Hi,
zum einen erscheint es mir recht sinnlos, das überhaupt so zu machen. Was willst Du mit dem Konstrukt des Transfers erreichen?
Damit deine Einstellungen der Unterordner greifen, muss die Anforderung auf den Unterordner gehen. Verwende also Response.Redirect anstelle von Server.Transfer, siehe dazu auch:
http://msdn.microsoft.com/de-de/library/y4k58xk7.aspx
Alternativ könnte man es auch mit UrlRewriting versuchen, falls Du nur die untergeordneten Seiten "verstecken" willst.
Gruß, Stefan
Microsoft MVP - Visual Developer ASP/ASP.NET
http://www.asp-solutions.de/ - Consulting, Development
http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community- Als Antwort markiert Stefan FalzModerator Samstag, 31. August 2013 18:12
Alle Antworten
-
Hi,
zum einen erscheint es mir recht sinnlos, das überhaupt so zu machen. Was willst Du mit dem Konstrukt des Transfers erreichen?
Damit deine Einstellungen der Unterordner greifen, muss die Anforderung auf den Unterordner gehen. Verwende also Response.Redirect anstelle von Server.Transfer, siehe dazu auch:
http://msdn.microsoft.com/de-de/library/y4k58xk7.aspx
Alternativ könnte man es auch mit UrlRewriting versuchen, falls Du nur die untergeordneten Seiten "verstecken" willst.
Gruß, Stefan
Microsoft MVP - Visual Developer ASP/ASP.NET
http://www.asp-solutions.de/ - Consulting, Development
http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community- Als Antwort markiert Stefan FalzModerator Samstag, 31. August 2013 18:12
-