";ObjectContext实例已被释放并且不能再用于需要连接的操作“;

本文关键字:用于 操作 不能 连接 实例 ObjectContext quot 释放 | 更新日期: 2023-09-27 18:25:55

这里有个小问题。代码在这里:

 using (LINKSEntitiesMaster LE = new LINKSEntitiesMaster())
            {
                Cache["ALLDB"] = LE;                   
            }
 internal void FilterDB(string ParentPageTitle, string ButtonName)

    {
        var ALLdb = (LINKSEntitiesMaster)Cache["ALLDB"];

        var x = ALLdb.MainTables.Where(s => s.Language == ParentPageTitle && s.ButtonName == ButtonName).Select(w => w.AllLinks).ToList();

        Links.DataSource = ALLdb;
        Links.DataBind();

}

错误在主题中。我将筛选后的数据库保存到列表中,不明白为什么连接关闭。。。?

我一直在找,但找不到答案。

";ObjectContext实例已被释放并且不能再用于需要连接的操作“;

由于LINKSEntitiesMaster LE = new LINKSEntitiesMaster()被封装在using语句中,连接可能被关闭。一旦代码超出using范围,LINKSEntitiesMaster就会被释放。