我无法通过Request.Querystring
读取从其他页面传递的数组//Label1.Text += FID[l]; //Checked the array and it is printing properly.
Response.Redirect("show.aspx?id=" + ID + "&name=" + NAME + "&fileid="
+FID+"&length="+j);
string fid=string.Empty;
if (!string.IsNullOrEmpty(Convert.ToString(Request.QueryString["fileid"].ToString())))
{
fid = Request.QueryString["fileid"].ToString();
}
for (int l = 0; l < length; l++)
{
Label1.Text += fid[l]; //Printing wrong array
}
任何人都可以帮助我。
如何使用 Global.aspx 文件来执行此操作而不是参数传递。
答案 0 :(得分:1)
你的代码毫无意义,首先如果代码全部采用相同的方法,那么在Response.Redirect运行之后就没有了。
第二个假设Response.Redirect与其他代码的方法不同,那么
if (!string.IsNullOrEmpty(Convert.ToString(Request.QueryString["fileid"].ToString())))
在上面一行中,您在已经是字符串的东西上调用ToString(),然后将其转换为字符串。如果Request.QueryString [“fileid”]为null,那么这将抛出一个空引用异常。你应该这样做:
if (!string.IsNullOrEmpty(Request.QueryString["fileid"]))
第三个fid是一个字符串,Label1.Text是一个字符串。为什么要通过char循环遍历字符串char,然后将它们添加到结束Label1.Text。
最后fid将包含作为查询字符串param“fileid”传递的任何内容,它不能包含任何其他内容。如果它具有“错误”值,则在查询字符串中传递“错误”值。