日期:2014-05-17  浏览次数:20394 次

ASP.NET传参问题
DetailPageUrl = "'AP/wQryApPoPayAgeSuppDetail.aspx?DetailPageParam="+Server.UrlEncode(DetailPageParam)+"&currentsaleName=" + Server.UrlEncode(currentsaleName) + "&TimeStr=" + TimeStr + "'";

如代码所示,我要传递3个参数,其中currentsaleName和TimeStr都没问题,但是那个DetailPageParam是一个字符串,里面的格式为(参数1,参数2,参数3),全部用","分割,而且有的参数还是汉字。直接传的话,总是出现问题,URL无法跳转,请问各位大神这个该如何解决呢?
ASP.NET??页面传值

------解决方案--------------------
你的原来语句我就简写了。
假如页面A传给页面B是这个样子滴: 
B.aspx?DetailPageParam=abcdefg,12345,测试数据

那么你对 “abcdefg,12345,测试数据”进行des加密,
这个时候就是这个样子滴:B.aspx?DetailPageParam=des("abcdefg,12345,测试数据")

在B页面中,
string dpp=Request.QueryString["DetailPageParam"].ToString();//获取
string DetailPageParam=Eny(dpp);//解密
剩下的具体几个逗号,几个参数再按照你的意思去分就是。

des 加密后,数据基本上就由 “abcdefg,12345,测试数据”变成了 “Abddkeljsdflial= ”这个样子,
这个样子的数据没问题了吧!
------解决方案--------------------
比如原来的数据位 “各种测试啊98723,这个是字母和数字了abcdekljl12334,klsjdfoil”
加密后的数据为“5vesfixsqMwbZhxvA2On6/GsixLj7fFt1JecwdLOgymMyyBlYI0Sp1qKWln9h7hZMbnA4ZdOCqW/aKsuMEoZckm8roEMzmk1UP8b/RymhaQ=”
这时候,“/”有可能会出错,你把加密的数据中的字符“/”换成一个其他的字符“$”即可