Пример #1
0
            /// <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();
                    }
                }
            }
Пример #2
0
            /// <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();
                    }
                }
            }