调试到上下文的地方,是不是using用的不恰当,访问了已经被释放的上下文

解决方案 »

  1.   

    需要在using 中 取出来需要的数据,不然 函数执行完毕后 资源会被释放
      

  2.   

    GetList(string sql)一看这,你们的领域驱动就走上邪路了。
      

  3.   

    return query.ToList();记住,从EF的Context执行出来的东西是表达式树,不是数据本身,只有实际用到数据的时候才会真正去数据库中查询。你返回的是表达式,而非数据,而你拿到表达式的时候,DBContext就关掉了,你再请求数据,自然无法连接数据库了。所以要在DBContext关掉之前通过ToList()/ToArray()等方法拿到实际数据。
      

  4.   

    ef 不支持多表查询,不用sql怎么关联多表查询呢?