Moja aplikacja jest hostowana na różnych serwerach i chcę uzyskać adres URL strony na bieżącym serwerze.Jak uzyskać bieżący adres URL z kodu ASP.NET za
Jak można uzyskać tę właściwość w kodzie?
Moja aplikacja jest hostowana na różnych serwerach i chcę uzyskać adres URL strony na bieżącym serwerze.Jak uzyskać bieżący adres URL z kodu ASP.NET za
Jak można uzyskać tę właściwość w kodzie?
string url = HttpContext.Current.Request.Url.AbsoluteUri;
http://thehost.com/dir/Default.aspx
string path = HttpContext.Current.Request.Url.AbsolutePath;
/dir/Default.aspx
string host = HttpContext.Current.Request.Url.Host;
thehost.com
Co się stanie, jeśli "#" w adresie URL ..... tj .: http: test.abc.com/sitesposure.aspx#commentfocus ......... będzie działać? –
@ Pranav-BitWiser HttpContext.Current.Request.Url zwraca System.Uri. Oto podsumowanie wszystkich właściwości Uri: http://blog.jonschneider.com/2014/10/systemuri-net-framework-45-visual-guide.html –
string MyUrl = HttpContext.Current.Request.Url.AbsoluteUri
ścieżka ciąg = HttpContext.Current.Request.Url.AbsolutePath;
dało mi to /dir/Default.aspx. Rozwiązanie @Siraj dało mi http: // localhost: 1872/dir/Default.aspx i tego właśnie potrzebuję. dzięki. – dotnetandsqldevelop
Innym sposobem uzyskania URL z kodu za pliku
public string FullyQualifiedApplicationPath
{
get
{
//Return variable declaration
var appPath = string.Empty;
//Getting the current context of HTTP request
var context = HttpContext.Current;
//Checking the current context content
if (context != null)
{
//Formatting the fully qualified website url/name
appPath = string.Format("{0}://{1}{2}{3}",
context.Request.Url.Scheme,
context.Request.Url.Host,
context.Request.Url.Port == 80
? string.Empty
: ":" + context.Request.Url.Port,
context.Request.ApplicationPath);
}
if (!appPath.EndsWith("/"))
appPath += "/";
return appPath;
}
}
czek ten Link dostaniesz więcej informacji.
public string GetApplicationName(){
string url = HttpContext.Current.Request.Url.AbsoluteUri;
int intStartIndex = GetIndex(url, 3);
int intEndIndex = GetIndex(url, 4);
return url.Substring(intStartIndex, (intEndIndex - intStartIndex) - 1);
}
public int GetIndex(string str, int indexNo){
int index = 0;
for (int i = 0; i < indexNo; i++){
int tempIndex = str.IndexOf("/") + 1;
str = str.Remove(0, tempIndex);
index += tempIndex;
}
return index;
}
możliwe duplikat [Get URL strony ASP.Net w kodzie -behind] (http://stackoverflow.com/questions/96029/get-u rl-of-asp-net-page-in-code-behind) –