【问题标题】:Getting domain from subdomain从子域获取域
【发布时间】:2012-08-28 21:39:19
【问题描述】:

我得到的网址是

http://orders.mealsandyou.com/default.php

我不想使用字符串函数来使用它来获取主域即

mealsandyou.com

c# 中是否有任何函数可以做到这一点,UrilAuthority 和所有的子域也都提供...

欢迎提出建议,而不是解决方法

【问题讨论】:

  • “我不想使用字符串函数” - 为什么?
  • @MitchWheat 我不喜欢使用变通方法/kludge。 .NET 是非常强大的框架,它也应该/必须有一些东西
  • 我假设他正在寻找的是 URI 对象上的 uri.subdomain 和 uri.domain。 (除非它不存在!)
  • 但是 TLD 是 com,这可能不是您想要的,您想要一个低于 TLD 的。但是对于mealsandyou.co.uk,您可能希望TLD 下有2 个。虽然曾经认为为 NIC 以外的任何东西使用 2 个字母或更少的域是不好的做法,但这种明智的策略已经有一段时间不受欢迎了,所以 u.tvo2.ie 是你不能做的例子以此为指导。

标签: c# .net url subdomain


【解决方案1】:

.Net 不提供从Uri.Host 中提取特定部分的内置功能。您必须自己使用字符串操作或正则表达式。

【讨论】:

  • 所以直到现在我们还没有这样的东西.. 嗯.. 很痛苦
【解决方案2】:

域字符串中唯一不变的部分是 TLD。 TLD 是域字符串的最后一位,例如 .com、.net、.uk 等。其他所有内容都取决于特定 TLD 的位置(因此您不能假设倒数第二部分是“域名”,对于 .co.uk,它将是 .co。

无论如何,我认为您采取了错误的方法。 URL 重写更适合这种事情。阅读以下内容:learn.iis.net/page.aspx/460/using-the-url-rewrite-module

【讨论】:

    猜你喜欢
    • 2014-07-07
    • 2010-09-22
    • 1970-01-01
    • 2011-03-13
    • 1970-01-01
    • 1970-01-01
    • 2012-12-02
    • 2019-09-10
    相关资源
    最近更新 更多