using My.OA.Model;
using System;
using System.Collections.Generic;
using System.Data.Entity;
using System.Linq;
using System.Runtime.Remoting.Messaging;
using System.Text;
using System.Threading.Tasks;
namespace My.OA.DAL
{
public class DbContextFactory
{
public static DbContext CreateDbContext()
{
DbContext db = (DbContext)CallContext.GetData("dbcontext");
if (db==null)
{
db = new OAEntities();
CallContext.SetData("dbcontext", db);
}
return db;
}
}
}
using My.OA.IDAL;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Remoting.Messaging;
using System.Text;
using System.Threading.Tasks;
namespace My.OA.DALFactory
{
public class DBSessionFactory
{
public static IDBSession CreateDBSession()
{
IDBSession session = CallContext.GetData("dbsession") as DbSession;
if (session==null)
{
session = new DbSession();
}
return session;
}
}
}
using System;
using System.Collections.Generic;
using System.Data.Entity;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace My.OA.IDAL
{
public interface IDBSession
{
DbContext Db { get;}
IUserInfoDal UserInfoDal { get; set; }
bool SaveChange();
}
}