public UnitOfWork(BankTransactionContext context, UserManager <ApplicationUser> userManager, SignInManager <ApplicationUser> signInManager, RoleManager <IdentityRole> RoleManager)
 {
     this.context     = context;
     UserManager      = userManager;
     SignInManager    = signInManager;
     this.RoleManager = RoleManager;
 }
        public static void SeedData(UserManager <ApplicationUser> userManager, RoleManager <IdentityRole> roleManager, BankTransactionContext context)
        {
            SeedRoles(roleManager);
            var user = new ApplicationUser
            {
                PhoneNumber        = "0909898978",
                UserName           = "******",
                NormalizedUserName = "******",
                Email                = "*****@*****.**",
                NormalizedEmail      = "*****@*****.**",
                EmailConfirmed       = true,
                PhoneNumberConfirmed = true,
                SecurityStamp        = Guid.NewGuid().ToString("D"),
            };
            var person = (context.Persons.Where(e => e.Id == 1)).FirstOrDefault();

            person.ApplicationUserFkId = user.Id;
            var user2 = new ApplicationUser
            {
                PhoneNumber        = "0819888978",
                UserName           = "******",
                NormalizedUserName = "******",
                Email                = "*****@*****.**",
                NormalizedEmail      = "*****@*****.**",
                EmailConfirmed       = true,
                PhoneNumberConfirmed = true,
                SecurityStamp        = Guid.NewGuid().ToString("D")
            };
            var person2 = (context.Persons.Where(e => e.Id == 2)).FirstOrDefault();

            person2.ApplicationUserFkId = user2.Id;
            //var user3 = new ApplicationUser
            //{
            //    PhoneNumber = "0819877978",
            //    UserName = "******",
            //    NormalizedUserName = "******",
            //    Email = "*****@*****.**",
            //    NormalizedEmail = "*****@*****.**",
            //    EmailConfirmed = true,
            //    PhoneNumberConfirmed = true,
            //    SecurityStamp = Guid.NewGuid().ToString("D")
            //};
            //var person3 = (context.Persons.Where(e => e.Id == 3)).FirstOrDefault();
            //person3.ApplicationUserFkId = user3.Id;

            if (!context.Users.Any(u => u.UserName == user.UserName))
            {
                SeedUsers(userManager, user, "qWerty1_");
                SeedUsers(userManager, user2, "qWerty1_");
                //SeedUsers(userManager, user3, "qWerty1_");
            }
            context.Persons.UpdateRange(person, person2);//, person3
            try
            {
                context.SaveChanges();
            }
            catch (DbUpdateException ex)
            {
            }
        }