protected List <IdentityUser> initUsers(FIFAServerContext context) { // Creating new user only if no one exists if (context.Users.Count() == 0) { // Initializing the roles for users IdentityRole role = context.Roles.Add(new IdentityRole(AuthenticationRoles.UserRole)); context.Roles.Add(role); IdentityRole adminRole = context.Roles.Add(new IdentityRole(AuthenticationRoles.AdministratorRole)); context.Roles.Add(adminRole); context.SaveChanges(); // Creating generic users var users = new List <IdentityUser> { new IdentityUser("user1"), new IdentityUser("user2"), new IdentityUser("admin") }; initUser(users[0], role.Id); context.Users.Add(users[0]); initUser(users[1], role.Id); context.Users.Add(users[1]); // adding the Admin role to the admin user initUser(users[2], role.Id); users[2].Roles.Add(new IdentityUserRole { RoleId = adminRole.Id, UserId = users[2].Id }); context.Users.Add(users[2]); context.SaveChanges(); return(users); } else { return(null); } }
// Generates matches and scores for a list of players private List <Match> seedMatchesScores(FIFAServerContext context, List <TeamPlayer> players, Int32 scoreId, Int32 matchId) { List <Match> createdMatches = new List <Match>(); // generate League 1 games foreach (TeamPlayer p1 in players) { foreach (TeamPlayer p2 in players) { // avoid adding match for player against himself if (p1.Id != p2.Id) { //add match & score Match match = new Match { Id = matchId++ }; context.Matches.AddOrUpdate( m => m.Id, match ); context.SaveChanges(); createdMatches.Add(match); var scoreHomePlayer1 = new Score { Id = scoreId++, MatchId = match.Id, Location = Location.Home, TeamPlayer = p1 }; var scoreAwayPlayer2 = new Score { Id = scoreId++, MatchId = match.Id, Location = Location.Away, TeamPlayer = p2 }; context.Scores.AddOrUpdate( s => s.Id, scoreHomePlayer1, scoreAwayPlayer2 ); context.SaveChanges(); } } } return(createdMatches); }