public static int PopulateTestData(AppDbContext context) { var toDos = context.ToDoItems.ToList(); foreach (var item in toDos) { context.Remove(item); } context.SaveChanges(); Random rand = new Random(Guid.NewGuid().GetHashCode()); const int numberOfItems = 100; for (int n = 0; n < numberOfItems; n++) { string userName = UserNames.GetRandomName(); var item = new ToDoItem { Description = TextGenerator.GetText(10, 25), DueDate = DateTime.Now.AddSeconds(rand.Next(60 * 60 * 4, 60 * 60 * 24 * 7)), Hours = rand.Next(1, 8), Owner = userName, Title = TextGenerator.GetText(3, 10), Avatar = $"https://api.adorable.io/avatars/285/{userName}.png" }; context.Add(item); } context.SaveChanges(); return(numberOfItems); }
public static async Task <int> PopulateTestDataAsync(AppDbContext context, UserManager <User> userManager) { var toDos = context.ToDoItems.ToList(); foreach (var item in toDos) { context.Remove(item); } context.SaveChanges(); Random rand = new Random(Guid.NewGuid().GetHashCode()); const int numberOfItems = 100; for (int n = 0; n < numberOfItems; n++) { var person = UserNames.GetRandomName(); var user = await userManager.FindByEmailAsync(person.email); if (user == null) { user = new User { Name = person.name, UserName = person.name.Replace(" ", ""), Email = person.email, }; _ = await userManager.CreateAsync(user, "MySecretPassword1@"); } var item = new ToDoItem { Description = TextGenerator.GetText(10, 25), DueDate = DateTime.Now.AddSeconds(rand.Next(60 * 60 * 4, 60 * 60 * 24 * 7)), Hours = rand.Next(1, 8), Owner = user.Name, OwnerId = user.Id, Title = TextGenerator.GetText(3, 10), Avatar = $"https://api.adorable.io/avatars/285/{user.UserName}.png" }; context.Add(item); } context.SaveChanges(); return(numberOfItems); }