【问题标题】:How to get the site address without subfolders?如何获取没有子文件夹的站点地址?
【发布时间】:2011-07-20 13:06:35
【问题描述】:

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

例如:

http://www.myWebApplication.com/a

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

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

http://www.myWebApplication:3345/c

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

任何帮助!

【问题讨论】:

    标签: c# asp.net url


    【解决方案1】:
    var url = new Uri("http://www.myWebApplication:3345/c");
    var siteAddress = url.Scheme + Uri.SchemeDelimiter + url.Host + 
        (url.IsDefaultPort? "":(":" + url.Port));
    

    如果是Request url,你可以从Request.Url获取它,而不是构建一个新的Uri。

    【讨论】:

      【解决方案2】:
      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();
      

      【讨论】:

        【解决方案3】:

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

        编辑:您可以玩转 HttpContext.Current.Request.Url 以从 URL 中获取您需要的大部分信息

        【讨论】:

        • 不,它只给了我localhost
        • 您期望得到什么?本地主机:端口?
        猜你喜欢
        • 2013-04-11
        • 1970-01-01
        • 2014-12-05
        • 2018-07-20
        • 2020-05-14
        • 1970-01-01
        • 1970-01-01
        • 2013-02-24
        • 1970-01-01
        相关资源
        最近更新 更多