Ejemplo n.º 1
0
 public UnitOfWork(UserProfile user, UnitOfWorkMode mode)
 {
     User      = user;
     Mode      = mode;
     Context   = new PortalContext();
     _disposed = false;
 }
Ejemplo n.º 2
0
        private void InitializeUnitOfWork(UnitOfWorkMode mode)
        {
            mContext = new ClasaEntitiesDb();

            if (mRepositories == null)
            {
                InitializeRepositoriesIoc();
            }

            if (mode == UnitOfWorkMode.Tracking)
            {
                mTransaction = mContext.Database.BeginTransaction();
            }
        }
    public IUnitOfWork Create(UnitOfWorkMode mode = UnitOfWorkMode.ReadOnly)
    {
        var options = new DbContextOptionsBuilder()
            #if DEBUG
                      .UseLoggerFactory(EfLoggerFactory)
                      .EnableSensitiveDataLogging()
            #endif
                      .UseNpgsql(Config.DB)
                      .Options;

        var db = new AppDb(options);

        db.ChangeTracker.LazyLoadingEnabled = false;

        if (mode == UnitOfWorkMode.ReadOnly)
        {
            db.ChangeTracker.AutoDetectChangesEnabled = false;
        }

        return(new UnitOfWork(db, mode));
    }
Ejemplo n.º 4
0
 protected IUnitOfWork NewUnitOfWork(UnitOfWorkMode mode = UnitOfWorkMode.ReadOnly)
 {
     return(_unitOfWorkFactory.Create(mode));
 }
Ejemplo n.º 5
0
 private RepoUnitOfWork(UnitOfWorkMode mode, Type scope) : this(mode)
 {
     mScope = scope;
 }
Ejemplo n.º 6
0
 private RepoUnitOfWork(UnitOfWorkMode mode)
 {
     mMode = mode;
     InitializeUnitOfWork(mode);
 }
Ejemplo n.º 7
0
 public UnitOfWork(AppDb db, UnitOfWorkMode mode)
 {
     Db    = db ?? throw new ArgumentNullException(nameof(db));
     _mode = mode;
 }