大学IT网 - 最懂大学生的IT学习网站! QQ资料交流群:367606806
当前位置:大学IT网 > ASP.NET技巧 > asp.net获取当前域名的根域

asp.net获取当前域名的根域

关键词:获取域名  阅读(1633) 赞(20)

[摘要]本文是对asp.net获取当前域名的根域的讲解,对学习ASP.NET编程技术有所帮助,与大家分享。
         /// <summary>
         /// 获取当前域名的根域
         /// </summary>
         /// <param name="url">域名地址</param>
         /// <returns></returns>
         public static string RootDomain(string url)
         {
             if (!url.StartsWith("http://") && !url.StartsWith("https://"))
             {
                 url = "http://" + url;
             }
 
             var uri = new Uri(url);
             string rootDomain;
             switch (uri.HostNameType)
             {
                 case UriHostNameType.Dns:
                     {
                         if (uri.IsLoopback)
                         {
                             rootDomain = uri.Host;
                         }
                         else
                         {
                             string host = uri.Host;
                             var hosts = host.Split('.');
                             rootDomain = hosts.Length == 2 ? host : string.Format("{0}.{1}", hosts[1], hosts[2]);
                         }
                     }
                     break;
                 default:
                     rootDomain = uri.Host;
                     break;
             }
             return rootDomain;
         }

  在网上搜索此类问题时,一般都是使用正则,且只是固定判断几个域名后缀的,例如.cn,.com,.net等,所以自己根据工作中的需求写了这个方法。



相关评论