2010-05-28 7 views
1

je dois envoyer le suivi querystring:caractère spécial dans querystring .NET

http://prod.intranet.siemens.com.br/drvs/index.aspx?page=2&pag=4&varpatch=%20C:\Documents%20and%20Settings\OPE253\My%20Documents\[email protected]#! 

Puis-je essayer de assing cela une chaîne, mais .NET chaîne pause à

http://prod.intranet.siemens.com.br/drvs/index.aspx?page=2&pag=4&varpatch=%20C:\Documents%20and%20Settings\OPE253\My%20Documents\[email protected] 

« # » ne pas apparaît dans querystring

Toutes les idées?

+0

Chris est juste en dessous, il est à noter que ce n'est pas un problème .Net, votre navigateur n'enverra rien après le '# 'ou le hachage, il sert un but très spécifique et tout est côté client. –

Répondre

6

non, parce que « # » est un caractère réservé. Il est utilisé pour relier à un endroit précis dans une page Web:

http://en.wikipedia.org/wiki/HTML_anchor#Overview

Ainsi, les navigateurs divisé l'URL au "#".

Vous aurez besoin de coder le "#" comme "% 23"

Vous devez utiliser String.Replace:

Dim outputURL As String = inputURL.Replace("#", "%23") 

ou HttpUtility.UrlEncode (encoder uniquement le querystring):

Dim outputQueryString As String = HttpUtility.UrlEncode(inputQueryString) 
+0

Comment l'encoder? – user353089

Questions connexes