我需要检查当前URL是否具有子域名,如果它有子域名,我想从URL中提取它。
任何人都可以在ASP.NET MVC应用程序中知道如何在C#中执行此操作。
感谢。
答案 0 :(得分:3)
这是你要找的吗?
Uri fullPath = new Uri("http://subdomain.domain.topleveldomain/index.html");
string hostname = fullPath.Host; // returns "subdomain.domain.topleveldomain"
char[] separators = new char[]{'.'};
// returns {"subdomain","domain","topleveldomain"}
string[] domains = hostname.Split(separators);
string subdomain = domains[0];
string domain = domains[1];
string tld = domains[2];
请注意,如果可能存在多个子域,则需要稍微更改一下,即。 http://subsub.sub.dom.tld/
或类似的东西。
答案 1 :(得分:2)
你不能这样做,考虑这些例子,一个是域,另一个是子域
domain.co.uk
subdomain.hp.hr
co.uk是英国TLD
和hp.hr可能是在克罗地亚注册的Hewlett-Packard网站
答案 2 :(得分:0)
子域名到底是什么意思?
你可以这样做:
Uri u = new Uri("http://sub.mydomain.com/path/file.htm"); if(i.Host == "sub.mydomain.com") { ... }
这就是你想要的吗?