.NET中新的Uri(基本,相对)行为不正确

时间:2010-01-08 13:56:19

标签: .net constructor uri

当你像这样创建一个新的Uri时:

New Uri(New Uri("http://example.com/test.php"),"?x=y")

它返回:

http://example.com/?x=y

应该回归:

http://example.com/test.php?x=y

根据那里的每个主要浏览器(我不太确定RFC说的是什么)。

这是一个错误还是还有其他任何功能正常的功能,还有什么是在不重新发明轮子的情况下修复它的最佳方法?

1 个答案:

答案 0 :(得分:6)

是的,对我来说这看起来像个错误。特别是,我建议您在Connect上报告此内容时,请参阅RFC 1808,特别是第4节第5步,以及使用此示例的第5.1节:

Base: http://a/b/c/d;p?q#f
Relative: ?y
Absolute: http://a/b/c/d;p?y

不确定解决问题的最佳方法,我担心:(