Response.Redirect的问题
C# code
try
{
String a="3";
Response.Redirect("B.aspx");
}
catch (Exception)
{
Response.Redirect("A.aspx");
}
以前没有注意,上面的代码为什么“Response.Redirect("A.aspx");”总会执行,如果不是 Response.Redirect的话,其它操作则不会。
------解决方案--------------------Response.Redirect("B.aspx",false);
是否存在B页面
------解决方案--------------------catch (Exception ex)
把这个异常的ex错误信息输出来看一下就知道问题出在哪里了
------解决方案--------------------+ false是不中止本次Response,
把代码弄详细点
------解决方案--------------------我测试过
Random ran = new Random();
if (ran.Next(1000) % 2 == 0)
{
Response.Redirect("A.aspx");
}
else
{
Response.Redirect("B.apsx");
}
这样并不会有任何错误,猜想是应该之前的Response.Redirect在Catch块中,而编译器编译后会有两个代码块进行Response.Redirect的操作,具体的原因只有微软的人才能说的清楚了,也说不定是一个bug哦!呵呵