如何在asp.net中获取http类型(http或https)链接的完整域名?

oli*_*dev 2 c# asp.net

我的asp.net应用程序将分发给不同的用户.它应该自动检索链接的域和http类型.

例如:

  1. http://abc.com/test.aspx
  2. https://abc.com/test2.aspx

我需要一种方法来自动检索这些链接:http://abc.comhttps://abc.com.

我怎样才能做到这一点?

提前致谢.

Abd*_*nim 5

您可以Uri从完整的URL 构建一个并构建新的URL.

public string GetRootUrl(string url)
{
   Uri uri = new Uri(str);
   return string.Format("{0}://{1}", uri.Scheme, uri.Authority);
}
Run Code Online (Sandbox Code Playgroud)

但是,您可以使用uri.Host,但是在任何部署的情况下,您将在某个端口上托管您的应用程序,http://abc.com:8087然后uri.Host将返回abc.comuri.Authority返回abc.com:8087.默认端口80将被忽略uri.Authority并且工作方式如下uri.Host.