2013-05-10 135 views
0

我在我的html页面上使用了一个图像。在那里我添加一个锚到该图像以提供链接。 锚包含的HREF为〜/ LB/lct.aspx?PID = 177 &猫=令人高兴的是在爱情重定向到其他带编码url的页面

最主要此网址大家从数据库。手动我没有进入它..

所以它是一个无效的网址,因为之间的空间愉快地爱

我用Httputility.urlencoding和解码也是........但问题我现在面临的是..

网址是否正确endoded但是当我点击,因为编码的URL不解码它不是重定向到适当的页面图像上..

如何解决这个......请帮助我对此......

回答

0

下面是代码

string url = "~/LB/lct.aspx?pid=177&cat=Happily In Love"; //your input 
    string[] arr = url.Split('?'); 
    var nameValues = HttpUtility.ParseQueryString(arr[1]); 
    foreach (var n in nameValues.AllKeys) 
    { 
     nameValues.Set(n, HttpUtility.UrlEncode(nameValues[n])); 
    } 
    url = arr[0] + "?" + nameValues.ToString(); //your output 

使用下面的代码来解码查询字符串值

string cat = HttpUtility.UrlDecode(Request.QueryString["cat"].ToString()); 
0

答案很简单,但如果它只是导致问题的空间,考虑用+替换它们使用字符串替换:

string newurl = url.Replace(" ","+"); 

请注意,如果空格被限制在查询字符串的内容中,这只是非常安全的。