Пример #1
0
        public List <User> SeedUsers(int totalAdmin, int totalManager, int totalCustomer)
        {
            // get data from dbModel
            var userTable     = dbModel.FirstOrDefault(x => x.TableName == TABLE_USER);
            var managerTable  = dbModel.FirstOrDefault(x => x.TableName == TABLE_MANAGER);
            var customerTable = dbModel.FirstOrDefault(x => x.TableName == TABLE_CUSTOMER);

            if (userTable == null || managerTable == null || customerTable == null)
            {
                throw new HttpResponseException(BAD_REQUEST_CODE);
            }

            // clear existed data
            context.Database.ExecuteSqlRaw(userTable.MakeDeleteDataCmd());
            context.Database.ExecuteSqlRaw(managerTable.MakeDeleteDataCmd());
            context.Database.ExecuteSqlRaw(customerTable.MakeDeleteDataCmd());

            // begin to insert
            var seeder = new UserTableSeeder(totalAdmin, totalManager, totalCustomer);

            context.Users.AddRange(seeder.Users);
            context.Managers.AddRange(seeder.Managers);
            context.Customers.AddRange(seeder.Customers);
            context.SaveChanges();

            // perform reset sequence
            context.Database.ExecuteSqlRaw(userTable.MakeSetSequenceCmd(totalAdmin + totalManager + totalCustomer));
            return(context.Users.AsNoTracking().ToList());
        }
Пример #2
0
 public GeneralModuleSeeder(
     RoleTableSeeder roleTableSeeder,
     UserTableSeeder userTableSeeder,
     DisablementTypeTableSeeder disablementTypeTableSeeder,
     LoginMaxAttemptTableSeeder loginMaxAttemptTableSeeder
     )
 {
     _roleTableSeeder            = roleTableSeeder;
     _userTableSeeder            = userTableSeeder;
     _disablementTypeTableSeeder = disablementTypeTableSeeder;
     _loginMaxAttemptTableSeeder = loginMaxAttemptTableSeeder;
 }