/// <summary> /// Create new user in database /// </summary> /// <param name="nickName"></param> /// <param name="password"></param> /// <param name="email"></param> /// <returns></returns> internal DbOperationStatus <User> CreateNew(string nickName, string password, string email) { DbOperationStatus <User> status = new DbOperationStatus <User>(); User newUser = new User() { Nickname = nickName, Email = email, ID = new Guid(), IsOnline = false, LastLoginDate = DateTime.MinValue, RegistrationDate = DateTime.Now, Verified = false, VerificationToken = Guid.NewGuid() }; using (var userPasswordCrypto = new UserPasswordCryptography(password)) { var encryptionResult = userPasswordCrypto.EncryptUserPassword(); newUser.Salt = encryptionResult.Salt; newUser.HashedPassword = encryptionResult.HashedPassword; } var num = newUser.Salt.Count(); _comparerDatabaseContext.Users.Add(newUser); status.RowsAffected = _comparerDatabaseContext.SaveChanges(); status.OperationSuccess = true; status.ReturnedObject = newUser; return(status); }
public void AddNewApplicationClient(string clientID, string clientSecret, string clientName, DateTime validationUntil) { _comparerDatabaseContext.APIClient.Add(new APIClient { ClientID = clientID, ClientName = clientName, ClientSecret = clientSecret, ValidationUntil = validationUntil }); _comparerDatabaseContext.SaveChanges(); }
public void InsertBonusStatsTableFromJsonFile() { var parsedJsonData = JsonProcessing.GetDataFromJsonFile <Models.Statistics.Statistics>(@"\Statistics.json"); for (int index = 0; index < parsedJsonData.BonusStats.Length; index++) { _comparerDatabaseContext.BonusStats.Add(new BonusStats() { ID = Guid.NewGuid(), BonusStatsID = parsedJsonData.BonusStats[index].BonusStatsID, Name = parsedJsonData.BonusStats[index].Name }); } _comparerDatabaseContext.SaveChanges(); }
public void InsertAllAchievementsDataFromApiRequest(Achievement apiData) { using (IDbContextTransaction transaction = _comparerDatabaseContext.Database.BeginTransaction()) { try { //TODO Remove delete from _comparerDatabaseContext.Database.ExecuteSqlCommand("DELETE FROM AchievementsData"); _comparerDatabaseContext.Database.ExecuteSqlCommand("DELETE FROM AchievementCategory"); for (int categoryIndex = 0; categoryIndex < apiData.AchievementCategory.Count(); categoryIndex++) { _comparerDatabaseContext.AchievementCategory.Add(new AchievementCategory() { ID = apiData.AchievementCategory.ElementAt(categoryIndex).ID, CategoryName = apiData.AchievementCategory.ElementAt(categoryIndex).CategoryName, }); IdentityInsertManager("AchievementCategory"); if (apiData.AchievementCategory.ElementAt(categoryIndex).AchievementsData != null) { for (int dataIndex = 0; dataIndex < apiData.AchievementCategory.ElementAt(categoryIndex).AchievementsData.Count(); dataIndex++) { _comparerDatabaseContext.AchievementsData.Add(new AchievementsData() { Title = apiData.AchievementCategory.ElementAt(categoryIndex).AchievementsData.ElementAt(dataIndex).Title, ID = apiData.AchievementCategory.ElementAt(categoryIndex).AchievementsData.ElementAt(dataIndex).ID, Points = apiData.AchievementCategory.ElementAt(categoryIndex).AchievementsData.ElementAt(dataIndex).Points, Description = apiData.AchievementCategory.ElementAt(categoryIndex).AchievementsData.ElementAt(dataIndex).Description, Icon = apiData.AchievementCategory.ElementAt(categoryIndex).AchievementsData.ElementAt(dataIndex).Icon, FactionId = apiData.AchievementCategory.ElementAt(categoryIndex).AchievementsData.ElementAt(dataIndex).FactionId, AchievementCategoryID = apiData.AchievementCategory.ElementAt(categoryIndex).ID }); } IdentityInsertManager("AchievementsData"); } if (apiData.AchievementCategory.ElementAt(categoryIndex).AchievementsSubCategoryData != null) { for (int dataIndex = 0; dataIndex < apiData.AchievementCategory.ElementAt(categoryIndex).AchievementsSubCategoryData.Count(); dataIndex++) { _comparerDatabaseContext.AchievementCategory.Add(new AchievementCategory() { CategoryName = apiData.AchievementCategory.ElementAt(categoryIndex).AchievementsSubCategoryData.ElementAt(dataIndex).CategoryName, ID = apiData.AchievementCategory.ElementAt(categoryIndex).AchievementsSubCategoryData.ElementAt(dataIndex).ID, }); IdentityInsertManager("AchievementCategory"); for (int index = 0; index < apiData.AchievementCategory.ElementAt(categoryIndex).AchievementsSubCategoryData.ElementAt(dataIndex).AchievementsData.Count(); index++) { _comparerDatabaseContext.AchievementsData.Add(new AchievementsData() { Title = apiData.AchievementCategory.ElementAt(categoryIndex).AchievementsSubCategoryData.ElementAt(dataIndex).AchievementsData.ElementAt(index).Title, ID = apiData.AchievementCategory.ElementAt(categoryIndex).AchievementsSubCategoryData.ElementAt(dataIndex).AchievementsData.ElementAt(index).ID, Points = apiData.AchievementCategory.ElementAt(categoryIndex).AchievementsSubCategoryData.ElementAt(dataIndex).AchievementsData.ElementAt(index).Points, Description = apiData.AchievementCategory.ElementAt(categoryIndex).AchievementsSubCategoryData.ElementAt(dataIndex).AchievementsData.ElementAt(index).Description, Icon = apiData.AchievementCategory.ElementAt(categoryIndex).AchievementsSubCategoryData.ElementAt(dataIndex).AchievementsData.ElementAt(index).Icon, FactionId = apiData.AchievementCategory.ElementAt(categoryIndex).AchievementsSubCategoryData.ElementAt(dataIndex).AchievementsData.ElementAt(index).FactionId, AchievementCategoryID = apiData.AchievementCategory.ElementAt(categoryIndex).ID }); IdentityInsertManager("AchievementsData"); } } } } transaction.Commit(); } catch (Exception ex) { transaction.Rollback(); } } void IdentityInsertManager(string tableName) { _comparerDatabaseContext.Database.ExecuteSqlCommand("SET IDENTITY_INSERT " + tableName + " ON"); _comparerDatabaseContext.SaveChanges(); _comparerDatabaseContext.Database.ExecuteSqlCommand("SET IDENTITY_INSERT " + tableName + " OFF"); } #endregion }