首页 > 其他 > 详细

获取当前域名的根域

时间:2014-09-27 00:14:30      阅读:208      评论:0      收藏:0      [点我收藏+]
 1         /// <summary>
 2         /// 获取当前域名的根域
 3         /// </summary>
 4         /// <param name="url">域名地址</param>
 5         /// <returns></returns>
 6         public static string RootDomain(string url)
 7         {
 8             if (!url.StartsWith("http://") && !url.StartsWith("https://"))
 9             {
10                 url = "http://" + url;
11             }
12 
13             var uri = new Uri(url);
14             string rootDomain;
15             switch (uri.HostNameType)
16             {
17                 case UriHostNameType.Dns:
18                     {
19                         if (uri.IsLoopback)
20                         {
21                             rootDomain = uri.Host;
22                         }
23                         else
24                         {
25                             string host = uri.Host;
26                             var hosts = host.Split(.);
27                             rootDomain = hosts.Length == 2 ? host : string.Format("{0}.{1}", hosts[1], hosts[2]);
28                         }
29                     }
30                     break;
31                 default:
32                     rootDomain = uri.Host;
33                     break;
34             }
35             return rootDomain;
36         }

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

获取当前域名的根域

原文:http://www.cnblogs.com/x1988z/p/3995791.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!