如果你上头的cookie不存在的话, 就执行catch结束后是不是进catch的,你catch里再加一行语句就知道了, vs.net调试时光标所在位置并不准, 它会跑到catch里停一下, 但实际上没有执行

解决方案 »

  1.   

    try catch 语句是捕捉出错信息的,catch语句一般显示出错信息。如果try语句出错,则处理catch语句。
      

  2.   

    但是我在实际测试的时候一直出现这样的错误
         Try
            If Request.Cookies("MyCookie")("HB") = "I" Then
                    LinkButton1.Enabled = True
                    'GoTo a
                End If
         Catch Request As System.Exception
                Response.Write("aaa.aspx")
         End Try
    我确信cookies存在,而且工作正常,但是只要运行就会Response.Write("aaa.aspx")
    我尝试了多种办法,比如
    If Request.Cookies("MyCookie")("HB") = "I" Then
        LinkButton1.Enabled = True
    else
       Response.Write("aaa.aspx")
    end if
    这样就不会跳转,但是这个时候如果cookies不存在就会出错
      

  3.   

    Try 段代码一定执行 Catch 段不一定执行