我想应该很多人会遇到这个问题。用asp.net开发的网站(vs2008以上发现此问题,现在用vs2010也然,但以前vs2003/2005开发的网站会不遇到)网站只要一更新bin文件夹里面的dll,便立即不能访问了。这个问题在我开发的若干个网站上遇到过。
但有时重启一下应用程序池就正常。
如果重启应用程序池还不行,那就重启IIS。
有时重启IIS都不行!那就只能重启服务器了。烦死!
有时一天要更新好多次。不知如果解决这个问题。谢谢。

解决方案 »

  1.   

    把web.config文件改下名字,再运行下,然后再改回来,运行试试。
      

  2.   

    我们一直都是这样更新没发现问题,是不是你的web.config每次都更新了
      

  3.   


    修改bin目录的文件也会让应用程序重启的
      

  4.   

    不要把备份的文件放在BIn目录下,否则也会出错,
      

  5.   

    vs2005包括以的后版本的编译机制和之前版本的有所区别 它时而调用缓存目录的类文件及时编译后反馈给客户端请求 造成你bin下的dll和它缓存的版本不一致
    可以清理缓存目录试试(先停止IIS或者当前网站)
      

  6.   


    打开任务管理器找到aspnet_wp.exe干掉。DOC环境下输入:iisreset  /restart
      

  7.   

    你除了使用.net托管程序的dll,还使用过其它dll吗?
      

  8.   

    修改下 web。config  在保存
      

  9.   

    在覆盖bin的时候自然是不能访问的
    覆盖完成后第一次访问会有一些慢,如果后面持续慢,则要检查下代码里面的open是否都关闭了
    可以考虑只传几个没有数据库连接的页面试试~
      

  10.   

    一般发布更新时要把Bin文件和webconfig文件更新了,就可以了啊,你看看都更新是不是还会出现这样的问题
      

  11.   

    主要是临时文件夹的临时生成文件执行中与新的BIN不同,造成的。清理一次临时文件夹内的文件即可。
      

  12.   

    先把旧的dll删除,再上传新的。我就是这么解决的
      

  13.   

    应该很简单啊  就把原来的BIN里的东西干掉 把新的丢进去 刷新 OK了
      

  14.   

    这个最近是发现08 和05不同了。 不能只更新bing你可以查看 每个页面的源 头部  一个随机码+你起的名字.dll
    对应bin的 随机码+你起的名字.dll05没有。  他们是对应的。要么你一个个对上,要么页面也替换吧
      

  15.   

    使用webapplication应该不会有问题
      

  16.   

    不需重启。把进程里w3wp.exe结束掉就可以了。
      

  17.   

    如果你是直接覆盖掉的话,文件是没有访问权限的。你需要重新设置bin目录的访问权限。在文件夹属性"安全"添加相应的读写权限即可。