asp.net 无法访问已关闭的资源集

本文探讨了ASP.NET中遇到的'无法访问已关闭的资源集'问题,提供了解决方案。问题根源可能在于数据库连接未正确关闭或静态DataContext导致资源未释放。解决方案包括设置IIS应用池回收策略、避免使用静态DataContext以及重写DataContext类以避免资源冲突。
摘要由CSDN通过智能技术生成

遇到这个问题,最简单直接的方式有:

1 重新给web服务器上传一个文件;

2 在Internet Information Server,找到default pool菜单(一般在server 系统的IIS当中才有,在默认网站菜单上面),点击鼠标右键,选择“回收”,这样网站就可以打开了。

   你也可以选择“属性”,然后在属性页面里设置default pool回收内存的时间点,还有回收周期,如120,代表2个小时。

 

要从根本上解决此类问题发生:

第一种情况:发生此类问题的是由于数据库连接没有关闭,或已经关闭的情况下访问的应用程序了。

     以前我在用vs2005开发应用程序时就遇到过,我每次查询完毕后都没有关闭过系统连接,在我调试系统时因为只有我一个人,系统调试完就释放了系统资源这样就不会引起冲突,但当我配置到web服务器时,由于频繁的测试访问,系统没有释放连接,导致服务器资源耗尽,此时就回出现应用程序无法访问的情况。

     现在我主要采用vs2008开发应用程序,使用Linq  to sql必然用到DataContenxt,此时所有操作都是基于DataContext的,之前我都将DataContext  实例化成静态对象,这样当我更新完一个记录后,点击浏览时,数据依然是原值,这说明这个DataContext还是之前的静态对象,未释放状态。之后我将DataContext实例化未一般的对象,即非静态类型。这样我将应用程序发布到web服务器时,这类问题再也没有出现过。

 

第二种情况:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值