为什么 Url 将一个反斜杠解码为 2 个反斜杠

Why Does Url Decode a Backslash into 2 Backslashes

我正在尝试解码 url 编码。然而,在测试过程中,我发现反斜杠 \ 的编码 %5C 将被解码为 \。这是为什么?如何在不手动替换它的情况下只使用一个反斜杠?

这是我的代码:

string decodedValue = Uri.UnescapeDataString(articleNr);

我认为您是在调试器中查看反斜杠的值,而不是打印出来。由于反斜杠是一个特殊的转义字符,调试器将其显示为 \ 但实际值​​是 \

Console.WriteLine(Uri.UnescapeDataString("%5C")); // prints \