5
我需要合并两个包含.Path信息的URL。合并两个URI时路径部分被覆盖
我想使用Uri
给我的可能性.TryCreate(),所以我可以捕获格式不正确的URL。
,我现在面临的问题是,基础URI路径似乎当我合并绝对和相对URI被忽略:
Uri absoluteUri= new Uri("http://hostname/path/", UriKind.Absolute);
Uri relativeUri = new Uri("/my subsite/my page.aspx?my=query", UriKind.Relative);
Uri resultUri;
if (!Uri.TryCreate(absoluteUri, relativeUri, out resultUri))
// handle errors
的上面的输出是:
http://hostname/my%20subsite/my%20page.aspx?my=query
我希望它是:
http://hostname/path/my%20subsite/my%20page.aspx?my=query
有没有一种方法来组合URL th包含使用Uri
类的路径信息?
你试过这个吗?当我做的时候没有什么区别。 – 2009-11-25 10:59:01
@anders,是的,适合我;我用一个完整的例子来编辑我的答案;请看看 – 2009-11-25 12:13:50
啊,我发现了什么使你的代码工作,而不是我的: 看来,绝对的网址也必须以/结束它的工作! 我用 字符串absoluteUrl =“http://主机名/路径”; 它并没有工作,但在“路径”后两端都是slahs,在“my”之前没有开始斜线,似乎可以工作! 这看起来很脆,所以生病了多一点,但你应该得到这个答案:-) – 2009-11-25 12:35:35