System.Resources.RuntimeResourceSet.GetObject(String key, Boolean ignoreCase, Boolean isString) +7670505
   System.Resources.RuntimeResourceSet.GetString(String key, Boolean ignoreCase) +17
   System.Resources.ResourceManager.GetString(String name, CultureInfo culture) +229
   System.Web.SR.GetString(String name) +28
   System.Web.UI.WebControls.LoginTemplate.CreateControls(LoginContainer loginContainer) +259
   System.Web.UI.WebControls.LoginTemplate.System.Web.UI.ITemplate.InstantiateIn(Control container) +45
   System.Web.UI.WebControls.Login.CreateChildControls() +139
   System.Web.UI.Control.EnsureChildControls() +87
   System.Web.UI.Control.PreRenderRecursiveInternal() +44
   System.Web.UI.Control.PreRenderRecursiveInternal() +171
   System.Web.UI.Control.PreRenderRecursiveInternal() +171
   System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean    includeStagesAfterAsyncPoint) +842最近我给自己的网站单独新建了一个“应用程序池”,记录它的访问日志,以及占用内存、线程等情况。但还是未找到解决问题的方法。看上面的错误提示好像是系统启动时,搜集启动程序的相关资源时出错的。我采取的措施是在web.config配置文件中将“debug”设为false,注释掉<compile>。但问题依旧。我的网站:AjaxControlToolKit,WebService,Linq to sql,Web Master。
BLL、DALFactory层,我全部采用静态方法。DAL层,每一个方法内部都实例化一个DataContext。前台取数据,我是全部取出来,然后用Grid控件自带的分页程序实现。(这点我还没改进,但我的数据不是很多,网站刚部署上去也没多少数据,同样出现上面的错误)。
出现这种问题,大家都在自己的网站里运用了什么技术了?大家有遇到还是没遇到这种情况的,都写一下,帮忙找下问题。

解决方案 »

  1.   

    设置IIS自动回收。某个时间段自动回收。
      

  2.   

    无法访问已关闭的资源集应该是资源Close了你还在访问,你如DataReader之类的。
    所以你需要查看代码,加调试信息看哪块代码出的问题
      

  3.   

    是不是因为DataContext没有关闭的问题,我全部用的是linq to sql 来访问数据库的,我是这样用的DataContext的,       
     public JWGLDC()
                : base(ConfigurationManager.ConnectionStrings["JWGLConnectionString"].ConnectionString)
    这是重写的DataContext,DAL层的类方法中是这样的,JWGLDC obj=new JWGLDC();
      

  4.   

    我以前用做过一个系统,用datareader,就是因为没有关闭数据访问当访问量增加时就会导致程序无法运行,所以每次使用完我都加了dr.close(),但DataContext是自己使用完就会关闭。还是我使用的方法不对,谁有DataContext使用的成功案例,可否指导在下。
      

  5.   

    用静态dal?这个有问题,可能导致死锁,访问数据库的时候最好不要用静态dal或是在方法里加lock