Créer un nouvel URI à partir de URI de base et Relative Path - slash fait la différence?

Pourquoi un slash de faire la différence lors de l'utilisation de new URI(baseUri, relativePath)?

Ce constructeur crée un Uri exemple en combinant les baseUri et la relativeUri ..

Et, comment peut peut un chemin d'accès relatif être ajouté en toute sécurité/de façon constante à un URI?

var badBase = new Uri("http://amee/noTrailingSlash");
var goodBase = new Uri("http://amee/trailingSlash/");
var f = "relPath";
new Uri(badBase, f)     //BAD  -> http://amee/relPath
new Uri(goodBase, f)    //GOOD -> http://amee/trailingSlash/relPath

La sortie désirée est "bon", même lorsque la première URI ne dispose pas d'une barre oblique.

source d'informationauteur user2864740