/// <summary> /// Add or Update User in Database /// </summary> /// <param name="User">todo: describe User parameter on AddUser</param> private static void AddUserToDatabase(TwitchLib.Models.API.v5.Users.User User) { if (User != null) { using (var context = new Storage.StorageEntities()) { var databaseUser = context.Users.SingleOrDefault(u => String.Compare(u.Id, User.Id) == 0); // Update User if (databaseUser != null) { databaseUser.Bio = User.Bio; databaseUser.CreatedAt = User.CreatedAt; databaseUser.DisplayName = User.DisplayName; databaseUser.Logo = User.Logo; databaseUser.Name = User.Name; databaseUser.Type = User.Type; databaseUser.UpdatedAt = User.UpdatedAt; // Active users if (databaseUser.ActiveUsers == null) { databaseUser.ActiveUsers = new Storage.ActiveUsers { ID = databaseUser.Id, JoinedTime = DateTime.Now, Users = databaseUser, }; } } // Create User else { var newUser = new Storage.Users { Id = User.Id, Bio = User.Bio, CreatedAt = User.CreatedAt, DisplayName = User.DisplayName, Logo = User.Logo, Name = User.Name, Type = User.Type, UpdatedAt = User.UpdatedAt, Currency = new Storage.Currency { Value = 0, }, ActiveUsers = new Storage.ActiveUsers { JoinedTime = DateTime.Now, }, TimeWatched = new Storage.TimeWatched { TimeWatched1 = 0, } }; context.Users.Add(newUser); } context.SaveChanges(); } } }
/// <summary> /// Add or Update User in Database /// </summary> /// <param name="User">todo: describe User parameter on AddUser</param> public void AddUserToDatabase(TwitchLib.Models.API.v5.Users.User User) { if (User != null) { using (var context = new Storage.DatabaseContext()) { var databaseUser = context.Users .Include(au => au.ActiveUsers) .SingleOrDefault(u => u.TwitchUser == Convert.ToInt32(User.Id)); // Update User if (databaseUser != null) { databaseUser.Bio = User.Bio; databaseUser.CreatedAt = User.CreatedAt; databaseUser.DisplayName = User.DisplayName; databaseUser.Logo = User.Logo; databaseUser.Name = User.Name; databaseUser.Type = User.Type; databaseUser.UpdatedAt = User.UpdatedAt; // Active users if (databaseUser.ActiveUsers == null) { databaseUser.ActiveUsers = new Storage.ActiveUsers { TwitchUser = databaseUser.TwitchUser, JoinedTime = DateTime.Now, Users = databaseUser, }; } } // Create User else { var newUser = new Storage.Users { TwitchUser = Convert.ToInt32(User.Id), Bio = User.Bio, CreatedAt = User.CreatedAt, DisplayName = User.DisplayName, Logo = User.Logo, Name = User.Name, Type = User.Type, UpdatedAt = User.UpdatedAt, Currency = new Storage.Currency { TwitchUser = Convert.ToInt32(User.Id), Value = 0, }, ActiveUsers = new Storage.ActiveUsers { TwitchUser = Convert.ToInt32(User.Id), JoinedTime = DateTime.Now, }, TimeWatched = new Storage.TimeWatched { TwitchUser = Convert.ToInt32(User.Id), Time = 0, } }; context.Users.Add(newUser); } context.SaveChanges(); } } }