ASP.NET:如何在没有任何子域的情况下获取域名?

Cha*_*ell 7 .net dns

我一直在这里搜索,但似乎无法找到这个问题的答案.我有一点时间搞清楚是否有一种方法可以让我只是主要的域名HttpContext.Current.Request.Url

例子:

http://www.example.com > example.com
http://test.example.com > example.com
http://example.com >example.com

提前致谢.

编辑

只是为了澄清一下.这仅适用于我自己的域,不会在现有的每个域上使用.
目前我需要处理三个后缀.

  • .COM
  • .CA
  • .本地

sis*_*sve 8

public static void Main() {
    var uri = new Uri("http://test.example.com");

    var fullDomain = uri.GetComponents(UriComponents.Host, UriFormat.SafeUnescaped);
    var domainParts = fullDomain
        .Split('.') // ["test", "example", "com"]
        .Reverse()  // ["com", "example", "test"]
        .Take(2)    // ["com", "example"]
        .Reverse(); // ["example", "com"]
    var domain = String.Join(".", domainParts);
}
Run Code Online (Sandbox Code Playgroud)