Qualcuno può aiutarmi a ottenere l'URL della pagina di lavoro corrente di ASP.NET in C#?Come ottenere l'URL della pagina corrente in C#
risposta
Prova questo:
string url = HttpContext.Current.Request.Url.AbsoluteUri;
// http://localhost:1302/TESTERS/Default6.aspx
string path = HttpContext.Current.Request.Url.AbsolutePath;
// /TESTERS/Default6.aspx
string host = HttpContext.Current.Request.Url.Host;
// localhost
AbsolutePath sembra restituire "/" in .NET 3.5 (non hanno testato altre versioni) per percorsi simili agli account utente di Twitter, come http://twitter.com/#!/user . Puoi usare il metodo Fragment per ottenere qualcosa dopo la sterlina (#). –
In realtà questi non sono corretti se usati con un meccanismo di riscrittura come UrlRewriter.net perché questo darà l'URL riscritto. È quindi possibile utilizzare: Request.Url.GetLeftPart (UriPartial.Authority) + Request.RawUrl –
cosa si fa se 'HttpContext.Current' è nullo? – drzaus
se si desidera solo la parte tra http: // e la prima barra
string url = Request.Url.Host;
sarebbero tornati stackoverflow.com se chiamati da questa pagina
Ecco il complete breakdown
Non include la porta. Necessario: 'HttpContext.Current.Request.Url.Port'. – JohnB
@JohnB o piuttosto 'HttpContext.Current.Request.Url.Authority', recuperando' host: port' con una chiamata ... –
Una ricerca mi ha atterrato in questa pagina, ma non era proprio quello che stavo cercando. Pubblicazione qui nel caso in cui qualcun altro cerchi ciò che ero atterra anche in questa pagina.
Ci sono due modi per farlo se si ha solo un valore di stringa.
.NET modo:
Uguale @Canavar, ma è possibile creare un'istanza di un nuovo oggetto Uri
String URL = "http://localhost:1302/TESTERS/Default6.aspx";
System.Uri uri = new System.Uri(URL);
che significa che è possibile utilizzare gli stessi metodi, per esempio
string url = uri.AbsoluteUri;
// http://localhost:1302/TESTERS/Default6.aspx
string host = uri.host
// localhost
modo Regex:
Da notare anche che se la stringa non può essere analizzata genererà un System.FormatException. Tuttavia, il metodo System.Uri.TryCreate è stato introdotto in .NET 4. –
solo condividendo come questa è stata la mia soluzione grazie al post di Canavar.
Se hai qualcosa di simile:
"http://localhost:1234/Default.aspx?un=asdf&somethingelse=fdsa"
o come questo:
"https://www.something.com/index.html?a=123&b=4567"
e si desidera solo la parte che un utente digita allora questo lavoro:
String strPathAndQuery = HttpContext.Current.Request.Url.PathAndQuery;
String strUrl = HttpContext.Current.Request.Url.AbsoluteUri.Replace(strPathAndQuery, "/");
che risulterebbero in questi:
"http://localhost:1234/"
"https://www.something.com/"
Solo per affermare l'ovvio: HttpContext si trova in System.Web, i.e System.Web.HttpContext. msdn: http://msdn.microsoft.com/en-us/library/system.web.httpcontext.aspx – Sindre
Ancora più semplice è: 'Request.Url.GetLeftPart (UriPartial.Authority)' Vedi qui: https: // msdn .microsoft.com/it-it/library/system.uri.getleftpart (v = vs.110) .aspx –
immagino la sua abbastanza per tornare percorso assoluto ..
Path.GetFileName(Request.Url.AbsolutePath)
using System.IO;
Non penso che soddisferà OP perché fornisce solo il nome della pagina :( – clamchoda
Se si desidera ottenere
localhost:2806
da
http://localhost:2806/Pages/
quindi utilizzare:
HttpContext.Current.Request.Url.Authority
Si può a volte bisogno di ottenere valori diversi da URL.
Questi esempio illustra diversi modi per estrarre diverse parti del URL
ESEMPIO: (URL Esempio)
http://localhost:60527/WebSite1test/Default2.aspx?QueryString1=1&QueryString2=2
CODICE
Response.Write("<br/> " + HttpContext.Current.Request.Url.Host);
Response.Write("<br/> " + HttpContext.Current.Request.Url.Authority);
Response.Write("<br/> " + HttpContext.Current.Request.Url.Port);
Response.Write("<br/> " + HttpContext.Current.Request.Url.AbsolutePath);
Response.Write("<br/> " + HttpContext.Current.Request.ApplicationPath);
Response.Write("<br/> " + HttpContext.Current.Request.Url.AbsoluteUri);
Response.Write("<br/> " + HttpContext.Current.Request.Url.PathAndQuery);
OUTPUT
localhost
localhost:60527
60527
/WebSite1test/Default2.aspx
/WebSite1test
http://localhost:60527/WebSite1test/Default2.aspx?QueryString1=1&QueryString1=2
/WebSite1test/Default2.aspx?QueryString1=1&QueryString2=2
È possibile copiare incollare il codice di esempio sopra & eseguirlo in asp.net applicazioni web form con diversi URL.
Si consiglia inoltre di leggere il routing ASP.Net nel caso in cui sia possibile utilizzare il routing ASP, quindi non è necessario utilizzare l'URL tradizionale con stringa di query.
http://msdn.microsoft.com/en-us/library/cc668201%28v=vs.100%29.aspx
un suggerimento per la gente che ha bisogno il percorso/url nel file Global.asax;
Se è necessario eseguire questo in global.asax> Application_Start e modalità di pool di applicazione è integrato quindi si riceverà l'errore di seguito:
richiesta non è disponibile in questo contesto fa eccezione in Application_Start.
In questo caso è necessario utilizzare questo:
System.Web.HttpRuntime.AppDomainAppVirtualPath
spero possa aiutare gli altri ..
la richiesta. rawurl fornirà il contenuto della pagina corrente e fornisce il percorso esatto richiesto
uso HttpContext.Current.Request.RawUrl
- 1. Ottenere l'URL della pagina corrente in Grails
- 2. Come ottenere l'URL della pagina corrente in PHP
- 3. Come ottenere il nome della pagina corrente in Silex
- 4. Come ottenere l'URL completo della pagina corrente usando PHP
- 5. PageViewController indice della pagina corrente in Swift
- 6. Ottenere l'URL della pagina corrente utilizzando Selenium WebDriver
- 7. Come arrivare nome della pagina PHP corrente
- 8. come posso ottenere l'ora corrente in C#?
- 9. Come ottenere il nome della funzione corrente?
- 10. Ottenere l'HTML di origine della pagina corrente dall'estensione di cromo
- 11. Ottenere l'ora corrente in C
- 12. Come ottenere l'URL corrente
- 13. Come ottenere il titolo della pagina in Magento?
- 14. Ottenere pagina corrente a livello di codice
- 15. Come ottenere il dominio della richiesta corrente?
- 16. Come recuperare il nome della pagina corrente in JSP?
- 17. Come ottenere l'URL della pagina corrente in asp.net utilizzando la tecnica del code behind?
- 18. Get URL della pagina corrente in Chrome estensione
- 19. Come ottenere l'ora corrente in millisecondi da C in Linux?
- 20. Come ottenere il tempo corrente in millisecondi in C Programming
- 21. come ottenere la posizione corrente in FragmentPagerAdapter?
- 22. Come ottenere l'utilizzo della memoria corrente in Android?
- 23. Come posso ottenere il nome della subroutine corrente in Perl?
- 24. Come posso ottenere il nome della directory corrente in Javascript?
- 25. Come posso ottenere il nome della directory corrente in Ruby?
- 26. Come ottenere il numero corrente della carta SIM in Android?
- 27. Come ottenere il nome della directory corrente e visualizzarlo sulla pagina html utilizzando node.js
- 28. jQuery Mobile: Ottenere l'ID della pagina precedente
- 29. Come ottenere l'origine della pagina sul rasoio?
- 30. Ottenere numero di pagina corrente in InDesign CS5 da JavaScript
@Gordon Quindi qual è? Hai contrassegnato questa domanda come il duplicato ... DI UNA DOMANDA CHE HAI CONTRASSEGNATO COME ESSERE UN DUPLICATO TROPPO, UN MINUTO DOPO. Forse abbiamo bisogno di una richiesta di funzionalità per ottenere StackOverflow per aggiungere "non seguire" ai duplicati contrassegnati, perché tutto quello che volevo era una risposta e il motore di ricerca mi ha portato qui prima. Tuttavia, non farò una tale richiesta, affinché non sia contrassegnato come duplicato. :( –
@MarkAllen non sono sicuro del motivo per cui stai urlando contro di me? Se segui i maledetti, finirai per rispondere alla domanda più vecchia (potrei trovare allora) chiedendo questo: di che si tratta? Non importa dove hai finito la ricerca. Questa pagina ti dà 14 risposte, la chiusa contro una ti dà 15 e quella originale ti dà un'altra 11. Se non volessi chiudere le domande, avresti solo 14, non 40. Nota che hai meno di 10.000 di ripetenti quindi non vedi quelli cancellati – Gordon
@Gordon Scusa se i cappucci ti hanno offeso Sarebbe bello se i duplicati potessero essere esposti in una singola pagina unita. –