Response.Redirect无效

时间:2013-01-17 14:13:02

标签: asp.net

我不确定为什么这不起作用。

我正在验证登录的人是否具有正确的安全性,如果他们不这样做我想将他们重定向到另一个页面。

如果他们确实具有正确的安全性,则页面上的其余代码将继续执行。

当我单步执行代码时,它会执行response.redirect,但页面会继续加载。

strSQL = "Select * from tblSecurity Where SFID = '" & Right(My.User.Name, 4) & "' and (SecurityLevel = '900' or SecurityLevel = '850')"
ds = objData.SQLExecuteDataset(strSQL, CommandType.Text)
If ds.Tables(0).Rows.Count = 0 Then
    Response.Redirect("~/NotAuthorized.aspx", False)
End If

3 个答案:

答案 0 :(得分:7)

这正是你告诉它的。

false作为second parameter传递,使其不会终止当前页面。

答案 1 :(得分:0)

不要将表值等于零...给出验证,如ds.Tables(0).Rows.Count> 0 ...表示如果给定的登录详细信息正确,则表格正在保存记录。

答案 2 :(得分:0)

我尝试了所有这些以及更多方法,...在这里我只为后代留意我的解决方案,以后再作参考。我在打开大约6个VS项目时遇到了这个问题,每个项目都在各自的VS实例中。一旦我关闭了除一个项目之外的所有项目,问题就消失了。我不确定引起这个特殊问题的其他项目是什么,但是显然VS不喜欢自己打开太多。