public async Task <TagModel> AddAsync(TagModel tagModel) { var entity = _mapper.Map <Tag>(tagModel); var returnedEntity = await _repository.AddAsync(entity); tagModel.Id = returnedEntity.Id; return(tagModel); }
public bool CreateDefaults() { //bool AnswerRepositoryIsEmpty = AnswerRepository.Select().Count() == 0; //bool AnswerRepositoryIsEmpty = AnswerRepository.FindBy(item=>item.Description=="zzzz").Count() == 0; bool AnswerRepositoryIsEmpty = AnswerRepository.FindAllAsync().GetAwaiter().GetResult().Count() == 0; if (AnswerRepositoryIsEmpty == false) { return(false); } bool CategoryRepositoryIsEmpty = CategoryRepository.FindAllAsync().GetAwaiter().GetResult().Count() == 0; bool EarningRepositoryIsEmpty = EarningRepository.FindAllAsync().GetAwaiter().GetResult().Count() == 0; bool QuestionRepositoryIsEmpty = QuestionRepository.FindAllAsync().GetAwaiter().GetResult().Count() == 0; bool TagRepositoryIsEmpty = TagRepository.FindAllAsync().GetAwaiter().GetResult().Count() == 0; //bool ApplicationUserRepositoryIsEmpty = ApplicationUserRepository.All().Count() == 0; bool ApplicationUserRepositoryIsEmpty = ApplicationUserRepository.FindAllAsync().GetAwaiter().GetResult().Count() == 0; ////aboutIsEmpty = false; //if (CategoryRepositoryIsEmpty == false) return false; if (CategoryRepositoryIsEmpty) { try { string[] categoryNames = new string[] { "Categoryname1", "Categoryname2" }; foreach (var item in categoryNames) { var newItem = new Category { CreatedDate = DateTime.Now, UpdatedDate = DateTime.Now, Name = item, ImageOrIcon = "https://img.icons8.com/nolan/64/bug.png" }; CategoryRepository.AddAsync(newItem).GetAwaiter().GetResult(); } Commit(); } catch (Exception e) { throw e; Console.WriteLine("{0} Exception caught.", e.Message); } } if (TagRepositoryIsEmpty) { try { string[] tagNames = new string[] { "tag1", "tag2", "tag3", "tag4" }; foreach (var item in tagNames) { var newItem = new Tag { CreatedDate = DateTime.Now, UpdatedDate = DateTime.Now, Name = item }; TagRepository.AddAsync(newItem).GetAwaiter().GetResult(); } Commit(); } catch (Exception e) { throw e; Console.WriteLine("{0} Exception caught.", e.Message); } } if (ApplicationUserRepositoryIsEmpty) { try { string[] userNames = new string[] { "User1", "User2", "User3", "User4" }; foreach (var item in userNames) { var newItem = new ApplicationUser { Id = Guid.NewGuid().ToString(), CreatedDate = DateTime.Now, UpdatedDate = DateTime.Now, FacebookName = item, ProfilePicture = "SeedPicture", ProfilePictureWeb = "https://img.icons8.com/nolan/64/user.png", ConcurrencyStamp = Guid.NewGuid().ToString(), SecurityStamp = Guid.NewGuid().ToString("N").ToUpper(), NormalizedEmail = item.ToLower() + "@asqme.com", Email = item.ToLower() + "@asqme.com", NormalizedUserName = item.ToLower() + "@asqme.com", UserName = item.ToLower() + "@asqme.com", }; //var newItem2 = new ApplicationUser //{ // CreatedDate = DateTime.Now, // UpdatedDate = DateTime.Now, // FacebookName = "FacebookName", // ProfilePicture = "SeedPicture", // ProfilePictureWeb = "https://img.icons8.com/nolan/64/user.png", // ConcurrencyStamp = Guid.NewGuid().ToString(), // SecurityStamp = Guid.NewGuid().ToString(), // NormalizedEmail = AppSettings.Value.AdminEmail, // Email = AppSettings.Value.AdminEmail, // NormalizedUserName = AppSettings.Value.AdminEmail, // UserName = AppSettings.Value.AdminEmail, //}; ApplicationUserRepository.AddAsync(newItem).GetAwaiter().GetResult(); //UserManager.CreateAsync(newItem2).GetAwaiter().GetResult(); } Commit(); } catch (Exception e) { throw e; Console.WriteLine("{0} Exception caught.", e.Message); } } if (QuestionRepositoryIsEmpty) { try { var users = ApplicationUserRepository.FindAllAsync().GetAwaiter().GetResult().ToList(); var tags = TagRepository.FindAllAsync().GetAwaiter().GetResult().ToList(); var categories = CategoryRepository.FindAllAsync().GetAwaiter().GetResult().ToList(); foreach (var item in tags) { var newItem = new Question { CreatedDate = DateTime.Now, UpdatedDate = DateTime.Now, Title = "Question Title", Description = "Question Description", ApplicationUserId = users[new Random().Next(0, users.Count() - 1)].Id, SolverAnswerId = int.MinValue, CategoryId = categories[new Random().Next(0, categories.Count() - 1)].Id }; QuestionRepository.AddAsync(newItem).GetAwaiter().GetResult(); //Commit(); //Id = QuestionTagRepository.All().Count() + 1, //CreatedDate = DateTime.Now, //UpdatedDate = DateTime.Now, var newItem2 = new QuestionTag { QuestionId = newItem.Id, TagId = tags[new Random().Next(0, tags.Count() - 1)].Id }; QuestionTagRepository.AddAsync(newItem2).GetAwaiter().GetResult(); } Commit(); } catch (Exception e) { throw e; Console.WriteLine("{0} Exception caught.", e.Message); } } if (AnswerRepositoryIsEmpty) { var users = ApplicationUserRepository.FindAllAsync().GetAwaiter().GetResult().ToList(); var questions = QuestionRepository.FindAllAsync().GetAwaiter().GetResult().ToList(); try { foreach (var item in questions) { var newItem = new Answer { CreatedDate = DateTime.Now, UpdatedDate = DateTime.Now, QuestionId = item.Id, ApplicationUserId = users[new Random().Next(0, users.Count() - 1)].Id, Description = "Answer Description" }; AnswerRepository.AddAsync(newItem).GetAwaiter().GetResult(); Commit(); item.SolverAnswerId = newItem.Id; QuestionRepository.UpdateAsync(item).GetAwaiter().GetResult(); Commit(); } } catch (Exception e) { throw e; Console.WriteLine("{0} Exception caught.", e.Message); } } if (EarningRepositoryIsEmpty) { try { var users = ApplicationUserRepository.FindAllAsync().GetAwaiter().GetResult().ToList(); //var earningsTypes = new string[] { "Received", "Sent" }; var earningsTypes = Enum.GetValues(typeof(Earning.EarningType)); foreach (var item in users) { foreach (var item2 in users) { var newItem = new Earning { CreatedDate = DateTime.Now, UpdatedDate = DateTime.Now, EarningsType = (Earning.EarningType)earningsTypes.GetValue(new Random().Next(earningsTypes.Length)), Amount = 1m, SenderId = users.Where(u => u.Id != item.Id).ToList() [new Random().Next(0, users.Count() - 2)].Id, ApplicationUserId = item.Id }; EarningRepository.AddAsync(newItem).GetAwaiter().GetResult(); } Commit(); } } catch (Exception e) { throw e; Console.WriteLine("{0} Exception caught.", e.Message); } } //Commit(); if (CategoryRepositoryIsEmpty || TagRepositoryIsEmpty || ApplicationUserRepositoryIsEmpty || QuestionRepositoryIsEmpty || AnswerRepositoryIsEmpty || EarningRepositoryIsEmpty) { return(true); } else { return(false); } }