2011-02-03 8 views
7

Fondamentalmente, ho bisogno di conoscere la risposta a questa domanda in asp.net/C#:
source of REQUEST
Vorrei una delle mie pagine di sapere quale pagina indirizzato all'utente di questa pagina specifica. Ho provato a passare attraverso intellisense su alcune proprietà della pagina diverse, ma non sono riuscito a trovarlo. Qualsiasi aiuto?Fonte di richiesta asp.net/C#

risposta

14

Suona come la vostra ricerca di Request.UrlReferrer

Documentazione:HttpRequest.UrlReferrer

La richiesta può essere raggiunto dalla pagina:

Page.Request 

Se un'istanza di pagina non è disponibile, è possibile ottenere dal contesto attuale utilizzando:

HttpContext.Current.Request 
+0

Bello, grazie –

0

Penso che si desidera Request.ServerVariables["HTTP_REFERER"];

EDIT:

Utilizzare @SLaks rispondere

+0

http://w3fools.com. Inoltre, dovresti ottenere direttamente l'intestazione; non passare attraverso ServerVariables. – SLaks

+0

sono d'accordo. non ero a conoscenza di UrlReferrer. è per questo che ho votato per la tua risposta. –

+0

Inoltre non ero a conoscenza della reazione contro w3schools. leggendo sul sito w3fools ora. Grazie. –

3

Potete guardare Request.ServerVariables("HTTP_REFERER") o Request.ServerVariables("URL").

In alternativa è possibile utilizzare l'oggetto Request questo modo:

Request.Url.ToString() ti dà il percorso completo della pagina chiamante.

Se si chiama questo nella finestra immediata senza la ToString, si può vedere un sacco di informazioni:

Request.UrlReferrer.ToString() 
+0

impressionante thx, +1 –

0

Siamo in grado di arrivare a conoscere l'URL rinvio da immobili UrlReferrer. È facile da gestire nel file global.asax.

protected void Session_Start() 
{ 
    var SourceURL = HttpContext.Current.Request.UrlReferrer.AbsoluteUri.ToString(); 
} 

Ora possiamo memorizzare questo valore in sessione o da qualche parte e fare qualsiasi operazione che vorremmo.