在开发过程中,项目往往被划分为多层,而一个请求过来往往是从表示层开始一层一层向下调用,那么如果我们在不同的层中都使用到了 EF 上下文对象,而 有好几层都这么创建一个 EF 对象然后对其进行操作,那么最终哪一层的 EF 对象是我们需要的最新的数据就很难确定了,这是就很容易产生脏读. 在这种情况下,我们首先会想到使用单例模式,这样在整个应用程序的生命周期内只允许被创建一次.但是这样又会出现一个问题,所有的用户都访问同一个 EF 对象,随着访问的用户越来越多,这个 EF 对象的资源无法及时释放,导致