gpt4 book ai didi

c# - Mono 上的 Uri.MakeRelativeUri 行为

转载 作者:行者123 更新时间:2023-11-30 17:21:09 25 4
gpt4 key购买 nike

在 Mono (2.6.7) 上使用 MakeRelativeUri 时,我看到了一些奇怪的(无论如何对我来说)行为。举个例子:

var uri1 = new Uri("/somepath/someothersubpath/");
var uri2 = new Uri("/somepath/img/someimg.jpg");

var uri3 = uri1.MakeRelativeUri(uri2);
Console.WriteLine(uri3.OriginalString);

我希望这会输出 "../img/someimg.jpg",但我得到了 "img/someimg.jpg"

一个 friend 已经使用 windows/visual studio 确认,如果在字符串的开头附加一个额外的斜杠,他会得到我预期的结果(我也试过了,但没有成功)。

我不确定这是否是单声道中的 Uri 类的问题,或者我对 URI 类的工作方式的理解是否有缺陷,但是任何可以帮助我获得预期输出的建议将不胜感激.

谢谢,

亚历克斯

最佳答案

它似乎让它与 someothersubpath 本身相关,而不是与其子路径相关。

我不确定,但也许可以通过将任何内容附加到第一个字符串来解决这个问题:

var uri1 = new Uri("/somepath/someothersubpath/anything");
var uri2 = new Uri("/somepath/img/someimg.jpg");

var uri3 = uri1.MakeRelativeUri(uri2);
Console.WriteLine(uri3.OriginalString);

关于c# - Mono 上的 Uri.MakeRelativeUri 行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3692818/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com