Vb.net 在querystring.NET中输入特殊字符

Vb.net 在querystring.NET中输入特殊字符,vb.net,query-string,Vb.net,Query String,我需要发送以下查询字符串: http://prod.intranet.siemens.com.br/drvs/index.aspx?page=2&pag=4&varpatch=%20C:\Documents%20and%20Settings\OPE253\My%20Documents\Ca$@#! 然后我尝试将其分配到字符串,但.NET在 http://prod.intranet.siemens.com.br/drvs/index.aspx?page=2&pag=

我需要发送以下查询字符串:

http://prod.intranet.siemens.com.br/drvs/index.aspx?page=2&pag=4&varpatch=%20C:\Documents%20and%20Settings\OPE253\My%20Documents\Ca$@#!
然后我尝试将其分配到字符串,但.NET在

   http://prod.intranet.siemens.com.br/drvs/index.aspx?page=2&pag=4&varpatch=%20C:\Documents%20and%20Settings\OPE253\My%20Documents\Ca$@
“#”不会出现在查询字符串中

有什么想法吗?

没有,因为“#”是一个保留字符。它用于链接到网页中的特定位置:

因此浏览器在“#”处拆分URL

您需要将“#”编码为“%23”

您需要使用:

或(仅对查询字符串进行编码):

否,因为“#”是保留字符。它用于链接到网页中的特定位置:

因此浏览器在“#”处拆分URL

您需要将“#”编码为“%23”

您需要使用:

或(仅对查询字符串进行编码):


Chris就在下面,值得注意的是虽然这不是.Net问题,但您的浏览器不会发送任何超过
或哈希的内容,它有一个非常特定的用途,并且都是客户端的。Chris就在下面,值得注意的是,虽然这不是.Net问题,但您的浏览器不会发送任何超过
或哈希的内容,它提供了一个虚拟环境ry有特定的用途,而且都是客户端的。
Dim outputURL As String = inputURL.Replace("#", "%23")
Dim outputQueryString As String = HttpUtility.UrlEncode(inputQueryString)