如何在没有子文件夹的情况下获取站点地址?

时间:2011-07-20 13:06:36

标签: c# asp.net url

我想获取没有子文件夹的网站网址,我的意思是所有内容都替换为~

例如:

  

http://www.myWebApplication.com/a

     

http://www.myWebApplication.com?somepage=b

我只想:http://www.myWebApplication.com

  

http://www.myWebApplication:3345/c

我只想:http://www.myWebApplication:3345

任何帮助!

3 个答案:

答案 0 :(得分:2)

var url = new Uri("http://www.myWebApplication:3345/c");
var siteAddress = url.Scheme + Uri.SchemeDelimiter + url.Host + 
    (url.IsDefaultPort? "":(":" + url.Port));

如果是请求网址,您可以从Request.Url获取,而不是建立新的网址。

答案 1 :(得分:1)

var uriBuilder = new System.UriBuilder
    {
        Host = HttpContext.Request.Url.Host, 
        Path = "/",
        Port = HttpContext.Request.Url.Port,
        Scheme = HttpContext.Request.Url.Scheme
    };

var websiteUrl = uriBuilder.ToString();

答案 2 :(得分:0)

只需使用HttpContext.Current.Request.Url.Host

编辑:你可以玩HttpContext.Current.Request.Url来获取你需要的大部分信息