为什么单步调试asp.net的 C#代码时,IE会锁定?这是什么原理??

解决方案 »

  1.   

    1、你在(debug)的时候、页面要执行一次编译、编译通过、页面才会显示。
      

  2.   

    .net开发?VS开发?调试按F5?ALT+F5试试看,不调试运行
      

  3.   

    不是debug 的时候也这样啊。等待服务器响应嘛!
      

  4.   

    我说的锁定是指:当我在“Page_Load”上面加了断点时,并且以debug方式启动,IE会一直加载不了页面,但是IE也不会报错,直到我在vs2005点击继续运行,IE才会加载页面。这是为什么?
      

  5.   


    - -#  因为你在调试,提交一个REQUEST了要等待服务器的应答,服务器告诉你需要等待,所以你的IE就“卡住了”你本地访问和用别的机器访问是没有区别的都是访问你正在托管运行的程序,都是请求的同一个服务器,所以服务器会给同一种应答
      

  6.   

    这个不是IE锁定,是IE还没能接收到返回的信息,没返回信息你叫IE显示个毛??然后不超时应该是VS自动给页面加入了超时时间设置为无穷长(这个是猜的,唯一的依据就是允许程序猿设定页面超时时间这一条)
      

  7.   

    没有什么特殊的,因为 tcp 连接还在,浏览器就一直等
    要么 WEB 服务器中断连接,要么 WEB 客户端也就是浏览器中断连接
    浏览器上都有“停止”,用户选择“停止”才中止 tcp 连接
    web 服务器调试肯定不会主动中止 tcp 连接的,那就一直等着呗
    所以,只要 tcp 连接没断就行,ie 在哪台机器上无所谓,也不需要让 ie 知道在调试
      

  8.   

    那为什么IE没有收到Response也不会超时?哪里设置的超时值?
      

  9.   


    我挺纠结你这个问题的,你管他超不超时干啥?
    WEB.CONFIG文件里边改
    < httpRuntime executionTimeout="30"/>
      

  10.   


    超时是服务器控制的,IE很SB的它不会控制超时的事情,只能你手动断开连接Response.Timeout也可以设置
      

  11.   

    如果你开发了一款浏览器
    http是基于tcp连接的,你当然可以让你的浏览器在发出请求报文后5秒收不到响应数据就断掉tcp
    但是使用你浏览器的用户不会乐意的,所以你也会选择连接不断就等待
    真想观察这个行为可以自己写一个tcp服务端,只接受连接不响应数据