使用Uri的相对路径

use*_*949 5 .net c#

Uri test = new Uri(new Uri("http://www.google.com/test"),"foo");

返回http://www.google.com/foo

但是Uri测试=新的Uri(新的Uri("http://www.google.com/test/"),"foo");

返回http://www.google.com/foo/test

似乎最后一个斜线非常重要,是否有统一的方法可以在所有情况下返回 http://www.google.com/foo/test

Fré*_*idi 2

那么,您需要确保您的基本 URI 以/字符结尾:

public Uri CombineUris(string baseUri, string relativeUri)
{
    if (!baseUri.EndsWith("/")) {
        baseUri += "/";
    }
    return new Uri(new Uri(baseUri), relativeUri);
}
Run Code Online (Sandbox Code Playgroud)