Uri.TryCreate的输入参数,出了什么问题
本文关键字:什么 问题 参数 TryCreate 输入 Uri | 更新日期: 2023-09-27 18:31:28
我们下载的HTML页面很少,链接断开(相对路径),并且每个页面都是从中下载的原始URL。
我们正在使用 - 将所有相对链接转换为绝对链接 -
Foreach (anchorElement in page) -
Uri.TryCreate( originalPageURI, hrefRelativeURI, hrefAbsoluteURI )
这适用于大多数情况,但以下情况除外 -
originalPageURI = http://somewebsite.com/post.jsp?item=22
hrefRelativeURI = ?item=97
对于上述TryCreate()
失败的情况,Uri.TryCreate()
的输入参数是什么?
您无法解决 Uri 问题?item=97
因为它不是相对路径,而是查询字符串。
因此,您要做的是手动构建连接各部分的新 URL。
您应该使用:
-
originalFolderPath
,作为原始 URL 中到最后一个'/'
的部分。您可以将"true"相对路径连接到此路径以获取绝对 uri。(即那些不以?
开头的) -
originalFilePath
,作为原始 URL 到'?'
的部分。您可以将"假"相对路径连接到此部分。false 是那些表示查询字符串参数的参数(即以?
开头
的参数)。