解析的 Uri 有错误的端口号
Parsed Uri has wrong port number
考虑代码,假设 baseUri
来自方法参数
Uri baseUri = new Uri("www.contoso.com:8080/", UriKind.RelativeOrAbsolute);
baseUri = baseUri.IsAbsoluteUri
? baseUri
: new Uri("http://" + baseUri.OriginalString);//make URI http by default
Uri myUri = new Uri(baseUri, "catalog/shownew.htm?date=today");
对于给定的字符串 IsAbsoluteUri returns 为真。但是尽管在 URI 中指定了端口 myUri.Port
是 -1 并且 myUri.Host 是空的。
我应该如何解析这个字符串以获得正确的端口号?
您需要将 http://
添加到基本 uri 字符串的开头,使其成为有效的 URI,例如:
Uri baseUri = new Uri("http://www.contoso.com:8080/", UriKind.RelativeOrAbsolute);
考虑代码,假设 baseUri
来自方法参数
Uri baseUri = new Uri("www.contoso.com:8080/", UriKind.RelativeOrAbsolute);
baseUri = baseUri.IsAbsoluteUri
? baseUri
: new Uri("http://" + baseUri.OriginalString);//make URI http by default
Uri myUri = new Uri(baseUri, "catalog/shownew.htm?date=today");
对于给定的字符串 IsAbsoluteUri returns 为真。但是尽管在 URI 中指定了端口 myUri.Port
是 -1 并且 myUri.Host 是空的。
我应该如何解析这个字符串以获得正确的端口号?
您需要将 http://
添加到基本 uri 字符串的开头,使其成为有效的 URI,例如:
Uri baseUri = new Uri("http://www.contoso.com:8080/", UriKind.RelativeOrAbsolute);