我的代码如下:
string myString = "test://mytest/v1.0~admin#1~password";
var myUri = new Uri(myString);
我发现#
之后的部分不在myUri.LocalPath
。
我尝试用#
或'
替换哈希(&
),没有问题。我可以在哪里知道像#
这样的所有特殊字符会在Uri中引起同样的问题吗?
答案 0 :(得分:0)
哈希"#"仅供客户端使用,不会发送到服务器。可以从JS访问它以进行客户端导航(即单页应用程序)。 &符号用作在问号后传递给GET请求的值的分隔符。例如:http://example.com/controller/action?a=1&b=2&c=3#client-only将a,b和c中的整数值传递给服务器,在那里它们将被解析为方法参数。 '#'之后的部分被服务器忽略。