Exemplo n.º 1
0
        /// <summary>
        /// 在一次请求中只创建一个EF上下文实例
        /// </summary>
        /// <returns></returns>
        public static DbContext  CreateDbContext()
        {
            DbContext dbContext = (DbContext)CallContext.GetData("dbContext");

            if (dbContext == null)
            {
                dbContext = new OAEntities1();
                CallContext.SetData("dbContext", dbContext);
            }

            return(dbContext);
        }
Exemplo n.º 2
0
        public static DbContext CreateDBContext()
        {
            //httpcontext通过callcontext来保证线程内唯一的 所以这里用httpcontext和callcontext一样
            DbContext dbContext = (DbContext)CallContext.GetData("dbContext");

            if (dbContext == null)
            {
                dbContext = new OAEntities1();
                CallContext.SetData("dbContext", dbContext);
            }
            return(dbContext);
        }
Exemplo n.º 3
0
        public static DbContext GetCurrentDbContext()
        {
            //一次请求共用一个实例,返回值用DbContext ,上下文也可以改变了
            DbContext db = CallContext.GetData("DbContext") as DbContext;

            if (db == null)
            {
                //创建实例
                db = new OAEntities1();
                CallContext.SetData("DbContext", db);
            }
            return(db);
        }