ASP.net如何保证EF操作类线程内唯一

Posted 人生不断学习

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ASP.net如何保证EF操作类线程内唯一相关的知识,希望对你有一定的参考价值。

说到线程内唯一,肯定会想到单例模式,但是如果多用户访问网站就会出现问题。ASP.net中有两种方法可以保证EF操作类线程内唯一(目前只会这两种,以后有好的方法再添加):

1、httpcontext(实现原理也是通过数据槽callcontext)

将EF操作类通过键值对方法保存在HttpContext.Current.Items["key"],封装成方法直接调用

2、callcontext

public static DbContext CreateDbContext() {

DbContext dbContext = (DbContext)CallContext.GetData("dbContext");

if (dbContext == null)

{ dbContext = new OAEntities();

CallContext.SetData("dbContext", dbContext);

}

return dbContext;

}

以上是关于ASP.net如何保证EF操作类线程内唯一的主要内容,如果未能解决你的问题,请参考以下文章