·您现在的位置: 云翼网络 >> 文章中心 >> 网站建设 >> 网站建设开发 >> ASP.NET网站开发 >> 获取当前域名的根域
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 else24 {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等,所以自己根据工作中的需求写了这个方法。 供有需要的人参考使用。