Carattere '+' omesso nella stringa inviata al server

venerdì 09 gennaio 2009 - 11.58

paquito_ita Profilo | Senior Member

Ciao,

devo inviare la seguente stringa cifrata:
string s = tOrLTqmckDGbUgugNAaoqCF3H47CfgPmmTw5CG4TFSq[b]+[/b]GDTrDVRJy9VgdvjlcbvJ


La stringa è inviata ad una pagina aspx tramite QueryString. Tuttavia una volta inviata il carattere '+' è omesso. Ecco come viene ricevuta dalla pagina aspx la stringa:
tOrLTqmckDGbUgugNAaoqCF3H47CfgPmmTw5CG4TFSq GDTrDVRJy9VgdvjlcbvJ


Ho provato a usare Server.UrlEncode/Server.UrlDecode:
string PID = Server.UrlEncode(s); string URL = "configurationByName.aspx?pid=" + PID;


Ma ancora ottengo lo spazio vuoto. Come posso fare in modo che tutti i simboli/caratteri della stringa cifrata vengano inviati correttamente?

Grazie in anticipo.

kontax Profilo | Junior Member

Ciao, ho fatto una prova...e mi passa esattamente la stringa come la vuoi tu col + usando il server.UrlEncode..
Il codice sorgente non è stato renderizzato qui
perchè non c'è sufficiente spazio.
Clicca qui per visualizzarlo in una nuova finestra
Per altro passa anche il pezzo [b][/b] che non ho capito a cosa serva..
Quindi non saprei proprio..

paquito_ita Profilo | Senior Member

>Ciao, ho fatto una prova...e mi passa esattamente la stringa
>come la vuoi tu col + usando il server.UrlEncode..

Caspita, allora solo a me succede!!

I passaggi sono i seguenti:

[1] Passo la mia stringa al metodo Server.UrlEncode()
[2] La stringa risultante viene inviata tramite QueryString ad una pagina aspx
[3] Nella pagina aspx di destinazione applico Server.UrlDecode(QueryString("miaStringa"))

Tuttavia il carattere '+' si perde in questo ultimo passaggio....anche tu hai eseguito gli stessi passaggi o i ho omesso qualcosa?

>Per altro passa anche il pezzo [b][/b] che non ho capito a cosa
>serva..

Volevo "evidenziare" il carattere +

Grazie di nuovo

kontax Profilo | Junior Member

Okk!
Togli il Server.UrlDecode() quando prendi la querystring nella seconda pagina, così dovrebbe funzionare.
Ciao

paquito_ita Profilo | Senior Member

>Togli il Server.UrlDecode() quando prendi la querystring nella
>seconda pagina, così dovrebbe funzionare.

Mitico!!
Giustamente il decode mi andava a considerare i '+' come spazi!!!

Grazie per l'indizio
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2025
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5