因此,访问以下内容...
home.aspx?test=test&test2=test2
就变成了
home.aspx?test=test&test2=test2&referrerurl=home.aspx?test=test&test2=test2
现在,对引荐方案进行URL编码可以解决问题,但是我更有可能被大猩猩侵犯;所以问题摆在这里。 如何从.QueryString中去重输出?
目前我正在使用以下内容...
private string queryClean(string entity)
{
try
{
if(Request.QueryString["referrerUrl"] != null){
string[] Split = entity.Split(new Char[] { ',' });
string tmpValue = Convert.ToString(Split[0]);
return tmpValue;
}else{ return entity; }
}
catch (Exception cleanError)
{
errors.Text += "-clean-" + cleanError + "-endclean-";
return entity;
}
}
(忽略try/catch,我们有应用程序级错误捕获,但我仍在尝试)。
我正在使用C# .net 2。
谢谢。
[附加信息]
引荐网址(reffererURL)将始终位于字符串末尾,因此可能可以删除此点之后的查询字符串?
我已经尝试使用
string test = Convert.ToString(Request.QueryString);
string[] tRSplit = Regex.Split(test, "&referrerUrl");
Response.Write(tRSplit[0]);
并且...
System.Collections.Generic.List<string> testb = new System.Collections.Generic.List<string>(Convert.ToString(Request.QueryString).Split('&'));
for (int i = 0; i < testb.Count; i++)
{
Response.Write(i +": "+ testb[i].ToString()+"<br><br>");
}
两者仍会产生重复项
我可以使用Trim,但是否有更干净/更快的方法来实现此目标。