Ejemplo n.º 1
0
        private static void PrintAllAlbumsWithTheirUsers(SocialNetworkDbContext context)
        {
            var albums = context
                         .Albums
                         .Select(x => new
            {
                x.Name,
                Owner           = x.User.Username,
                AlbumUsers      = x.UserAlbum.Select(ua => ua.User),
                AlbumUsersCount = x.UserAlbum.Select(ua => ua.User).Count()
            })
                         .OrderBy(x => x.Owner)
                         .ThenByDescending(x => x.AlbumUsersCount)
                         .ToArray();

            foreach (var album in albums)
            {
                Console.WriteLine($"Album: {album.Name}");
                foreach (var user in album.AlbumUsers)
                {
                    var isOwner = user.Username == album.Owner ? "owner" : "viewer";
                    Console.WriteLine($"--User: {user.Username} -> {isOwner}");
                }

                Console.WriteLine("-----------------");
            }
        }
Ejemplo n.º 2
0
 public UserService(SocialNetworkDbContext db, IPhotoService photoService, IPostService postService, IEventService eventService)
 {
     this.db           = db;
     this.photoService = photoService;
     this.postService  = postService;
     this.eventService = eventService;
 }
Ejemplo n.º 3
0
        private static void PrintAllAlbumsForUserId(SocialNetworkDbContext context)
        {
            var userId = 1;

            var albums = context
                         .Albums
                         .Where(x => x.UserId == userId)
                         .Select(x => new
            {
                x.User.Username,
                AlbumName = x.Name,
                Pictures  = x.Pictures
                            .Where(pic => pic.Album.IsPublic == true)
                            .Select(p => new
                {
                    p.Title,
                    p.Path
                })
            })
                         .OrderBy(x => x.AlbumName)
                         .ToArray();


            foreach (var album in albums)
            {
                Console.WriteLine($"{album.Username}");
                foreach (var picture in album.Pictures)
                {
                    Console.WriteLine($"--{picture.Title}");
                    Console.WriteLine($"--{picture.Path}");
                }
            }
        }
Ejemplo n.º 4
0
 private static void SetUpDataBase(SocialNetworkDbContext db)
 {
     Console.WriteLine("Loading...");
     db.Database.EnsureDeleted();
     db.Database.EnsureCreated();
     Console.Clear();
 }
Ejemplo n.º 5
0
        private void PrintAlbumsByUser(SocialNetworkDbContext context)
        {
            Console.WriteLine("User albums in different roles:");

            var userId = context
                         .Users
                         .Where(u => u.SharedAlbums.Any(sa => sa.UserRole == UserRole.Owner))
                         .Select(u => u.Id)
                         .FirstOrDefault();

            var albumsData = context
                             .Users
                             .Where(u => u.Id == userId)
                             .Select(u => new
            {
                OwnerCount = u.SharedAlbums
                             .Where(sa => sa.UserRole == UserRole.Owner)
                             .Count(),
                ViewerCount = u.SharedAlbums
                              .Where(sa => sa.UserRole == UserRole.Viewer)
                              .Count()
            })
                             .FirstOrDefault();

            Console.WriteLine($"Owner {albumsData.OwnerCount} - Viewer {albumsData.ViewerCount} {Environment.NewLine}");
        }
Ejemplo n.º 6
0
        private void PrintAlbumsByTag(SocialNetworkDbContext context)
        {
            Console.WriteLine("Albums by tag:");

            var tagId = context
                        .Tags
                        .Where(t => t.Albums.Any())
                        .Select(t => t.Id)
                        .FirstOrDefault();

            var albumsData = context
                             .Albums
                             .Where(a => a.Tags.Any(t => t.TagId == tagId))
                             .OrderByDescending(a => a.Tags.Count)
                             .ThenBy(a => a.Name)
                             .Select(a => new
            {
                a.Name,
                Owner = a.User.Username
            })
                             .ToList();

            var builder = new StringBuilder();

            foreach (var album in albumsData)
            {
                builder.AppendLine($"{album.Name} - Owner {album.Owner}");
            }

            Console.WriteLine(builder.ToString());
        }
Ejemplo n.º 7
0
        private UserProfile GetUser(SocialNetworkDbContext db, UserXmlModel model, HashSet <string> addedUsersSoFar)
        {
            if (addedUsersSoFar.Contains(model.Username))
            {
                return(db.UserProfiles.FirstOrDefault(u => u.Username == model.Username));
            }
            else
            {
                addedUsersSoFar.Add(model.Username);

                var user = new UserProfile
                {
                    Username     = model.Username,
                    FirstName    = model.FirstName,
                    LastName     = model.LastName,
                    RegisteredOn = model.RegisteredOn
                };

                foreach (var image in model.Images)
                {
                    user.Images.Add(new Image
                    {
                        ImageUrl      = image.ImageUrl,
                        FileExtension = image.FileExtension
                    });
                }

                db.UserProfiles.Add(user);
                db.SaveChanges();

                return(user);
            }
        }
Ejemplo n.º 8
0
        private void PrintUsersWithAlbumsWithMoreThan3Tags(SocialNetworkDbContext context)
        {
            Console.WriteLine("Albums with more than 3 tags:");

            var albumData = context
                            .Albums
                            .Where(a => a.Tags.Count > 3)
                            .OrderByDescending(a => a.User.Albums.Count)
                            .ThenByDescending(a => a.Tags.Count)
                            .ThenBy(a => a.Name)
                            .Select(a => new
            {
                Owner = a.User.Username,
                Title = a.Name,
                Tags  = a.Tags.Select(at => at.Tag.Name)
            })
                            .ToList();

            var builder = new StringBuilder();

            foreach (var album in albumData)
            {
                builder
                .AppendLine($"{album.Title} - Owner {album.Owner}:")
                .AppendLine($"  {string.Join(", ", album.Tags)}");
            }

            Console.WriteLine(builder.ToString());
        }
Ejemplo n.º 9
0
        private void SeedPicturesToAlbums()
        {
            Console.WriteLine("Seeding Pictures to Albums...");

            using (var context = new SocialNetworkDbContext())
            {
                var albums     = context.Albums.ToList();
                var pictureIds = context.Pictures.Select(p => p.Id).ToList();

                for (int i = 0; i < albums.Count; i++)
                {
                    var currentAlbum  = albums[i];
                    var picturesCount = random.Next(0, MaxPicturesInAlbum);

                    for (int j = 0; j < picturesCount; j++)
                    {
                        try
                        {
                            currentAlbum.Pictures.Add(new PictureAlbum
                            {
                                PictureId = pictureIds[random.Next(0, pictureIds.Count)]
                            });

                            context.SaveChanges();
                        }
                        catch (Exception)
                        {
                        }
                    }
                }
            }
        }
Ejemplo n.º 10
0
        private void SeedUsers()
        {
            Console.WriteLine("Seeding Users...");

            using (var context = new SocialNetworkDbContext())
            {
                for (int i = 0; i < TotalUsers; i++)
                {
                    var isDeleted = false;
                    if (i % 10 == 0)
                    {
                        isDeleted = true;
                    }

                    var user = new User
                    {
                        Username = $"User#{i}",
                        Password = $"PASS!word@{i}",
                        Email    = $"user{i * random.Next(0, TotalUsers)}@gmail.com",
                        Age      = random.Next(1, 121),
                        //ProfilePicture = new byte[] { 1, 0, 1, 1, 0 }, // Disable for Task 3
                        RegisteredOn = DateTime.Now.AddDays(-i * 10 + TotalUsers),
                        IsDeleted    = isDeleted
                    };

                    context.Users.Add(user);
                }

                context.SaveChanges();
            }
        }
Ejemplo n.º 11
0
        private void PrintActiveUsersWithoreThan5Friends(SocialNetworkDbContext context)
        {
            Console.WriteLine("Active users with more than 5 friends:");

            var usersData = context
                            .Users
                            .Where(u => u.IsDeleted == false)
                            .Where(u => u.FriendshipsMade.Count > 5)
                            .OrderBy(u => u.RegisteredOn)
                            .ThenByDescending(u => u.FriendshipsMade.Count)
                            .Select(u => new
            {
                u.Username,
                Friends  = u.FriendshipsMade.Count,
                Activity = DateTime.Now.Subtract(u.RegisteredOn)
            })
                            .ToList();

            var builder = new StringBuilder();

            foreach (var user in usersData)
            {
                builder
                .AppendLine($"{user.Username} - Friends {user.Friends} - Network activity {user.Activity.Days} days");
            }

            Console.WriteLine(builder.ToString());
        }
Ejemplo n.º 12
0
        private void SeedTags()
        {
            Console.WriteLine("Seeding Tags...");

            using (var context = new SocialNetworkDbContext())
            {
                for (int i = 0; i < TotalTags; i++)
                {
                    context.Tags.Add(new Tag
                    {
                        Name = TagTransformer.Transform($"Tag  {i}")
                    });
                }

                // Testing invalid tags
                //var invalidTags = new[] { "myCat", "#no wake up", "aaaaaaaaaaaaaaaaaaXCutThisEnd", "me and my bff doing selfie" };

                //foreach (var invalidTag in invalidTags)
                //{
                //    context.Tags.Add(new Tag { Name = TagTransformer.Transform(invalidTag) });
                //}

                context.SaveChanges();
            }
        }
Ejemplo n.º 13
0
        //03 Shared Albums
        private static void ListAlbumsSharedWithUser(SocialNetworkDbContext db)
        {
            var testUsername = "******";

            var sharedAlbums = db.Albums
                               .Where(ah =>
                                      ah.Users
                                      .Any(a => a.User.Username == testUsername && a.Role == Role.Viewer)
                                      )
                               .Select(a => new
            {
                AlbumName    = a.Name,
                PictureCount = a.Pictures.Count
            })
                               .OrderByDescending(a => a.PictureCount)
                               .ThenBy(a => a.AlbumName)
                               .ToList();

            Console.WriteLine($"Albums shared with: {testUsername}");
            foreach (var a in sharedAlbums)
            {
                Console.WriteLine($"-Album: {a.AlbumName}");
                Console.WriteLine($"-Pictures: {a.PictureCount}");
            }
        }
Ejemplo n.º 14
0
        //02 Roles
        private static void ListAllAlbumsWithUser(SocialNetworkDbContext db)
        {
            var albums = db.Albums.
                         Select(a => new
            {
                AlbumName = a.Name,
                Users     = a.Users.Select(ah => new
                {
                    Username = ah.User.Username,
                    Role     = ah.Role
                }).OrderBy(u => u.Role).ThenBy(u => u.Username)
            })
                         .ToList()
                         .OrderBy(a => a.Users.First().Username)
                         .ThenByDescending(a => a.Users.Count(u => u.Role == Role.Viewer))
                         .ToList();

            foreach (var alb in albums)
            {
                Console.WriteLine($"Album: {alb.AlbumName}");
                foreach (var user in alb.Users)
                {
                    Console.WriteLine($"--User: {user.Username}, role = {user.Role}");
                }
            }
        }
Ejemplo n.º 15
0
        //03 Albums
        private static void ListAllAlbums(SocialNetworkDbContext db, int id)
        {
            var albums = db.Albums.Where(a => a.Id == id).Select(a => new
            {
                a.Name,
                UserInfo = a.Users.Select(u => new
                {
                    u.User.Username,
                }),
                a.Information,
                a.Pictures
            }).OrderBy(a => a.Name).ToArray();



            foreach (var a in albums)
            {
                Console.WriteLine($"{a.UserInfo}");
                if (a.Information == "public")
                {
                    foreach (var p in a.Pictures)
                    {
                        Console.WriteLine($"Title {p.Picture.Title} Path {p.Picture.Path}");
                    }
                }
                else
                {
                    Console.WriteLine($"{a.Name} => Private content!");
                }
            }
        }
Ejemplo n.º 16
0
        //01 Shared Albums
        private static void ListUsersSharedAlbums(SocialNetworkDbContext db)
        {
            User currentUser = db.Users.Find(1);

            var sharedAlbums = db.Albums
                               .Where(ah =>
                                      ah.Users
                                      .Any(a => a.User.Username == currentUser.Username && a.Role == Role.Viewer)
                                      )
                               .Select(a => new
            {
                AlbumName    = a.Name,
                PictureCount = a.Pictures.Count
            })
                               .OrderByDescending(a => a.PictureCount)
                               .ThenBy(a => a.AlbumName)
                               .ToList();

            Console.WriteLine($"Albums shared with: {currentUser}");
            foreach (var alb in sharedAlbums)
            {
                Console.WriteLine($"-Album: {alb.AlbumName}");
                Console.WriteLine($"-Pictures: {alb.PictureCount}");
            }
        }
Ejemplo n.º 17
0
        //02 Albums
        private static void ListPictureInSeveralAlbums(SocialNetworkDbContext db)
        {
            var pictures = db.Pictures
                           .Where(p => p.Albums.Count > 2)
                           .Select(p => new
            {
                p.Title,
                AlbumsTitlesAndOwners = p.Albums.Select(a => new
                {
                    a.Album.Name,
                    Holders = a.Album.Users    //a.Album.AlbumHolders.First(ah => ah.Role == Role.Owner).User.Username //This is not working because of reasons unknown =/
                })
            })
                           .OrderByDescending(p => p.AlbumsTitlesAndOwners.Count())
                           .ThenBy(p => p.Title)
                           .ToList();

            foreach (var p in pictures)
            {
                Console.WriteLine($"Picture: {p.Title}");
                foreach (var a in p.AlbumsTitlesAndOwners)
                {
                    Console.WriteLine($"--Album name: {a.Name}");
                }
            }
        }
Ejemplo n.º 18
0
        private static void PrintAllAlbumsWithGivenTag(SocialNetworkDbContext db)
        {
            var specificTagId = 42;

            var result = db
                         .Albums
                         .OrderByDescending(a => a.Tags.Count)
                         .ThenBy(a => a.Name)
                         .Select(a => new
            {
                Tag = a.Tags.Where(t => t.Tag.Id == specificTagId).Select(t => new
                {
                    t.Album.Name,
                    User = t.Album.User.Name
                }),
            })
                         .ToList();

            foreach (var album in result)
            {
                foreach (var tag in album.Tag)
                {
                    Console.WriteLine($"Album Name: {tag.Name}");
                    Console.WriteLine($"Username: {tag.User}");
                    Console.WriteLine("-----");
                }
            }
        }
Ejemplo n.º 19
0
        private static void PrintSharedPictures(SocialNetworkDbContext db)
        {
            var result = db
                         .Pictures
                         .Where(p => p.Albums.Count > 2)
                         .OrderByDescending(p => p.Albums.Count)
                         .Select(p => new
            {
                p.Title,
                Albums = p.Albums.Select(a => new
                {
                    a.Album.Name,
                    UserName = a.Album.User.Name
                })
            })
                         .OrderBy(p => p.Title)
                         .ToList();

            foreach (var picture in result)
            {
                Console.WriteLine($"Picture Title: {picture.Title}");

                foreach (var albums in picture.Albums)
                {
                    Console.WriteLine($"Album name: {albums.Name}");
                    Console.WriteLine($"User name: {albums.UserName}");
                }
            }
        }
Ejemplo n.º 20
0
        private void PrintPicturesInMoreThan2Albums(SocialNetworkDbContext context)
        {
            Console.WriteLine("Pictures appearing in more than 2 albums with album title & owner:");

            var picturesData = context
                               .Pictures
                               .Where(p => p.Albums.Select(pa => pa.Album).Count() > 2)
                               .OrderByDescending(p => p.Albums.Count)
                               .ThenBy(p => p.Title)
                               .Select(p => new
            {
                p.Title,
                Albums = p.Albums.Select(pa => new
                {
                    Title = pa.Album.Name,
                    Owner = pa.Album.User.Username
                })
            })
                               .ToList();

            var builder = new StringBuilder();

            foreach (var picture in picturesData)
            {
                builder.AppendLine($"{picture.Title}");
                foreach (var album in picture.Albums)
                {
                    builder.AppendLine($"  {album.Title} - Owner {album.Owner}");
                }
            }

            Console.WriteLine(builder.ToString());
        }
Ejemplo n.º 21
0
        //02 Tags
        private static void ListUsersWithMoreThan3Tags(SocialNetworkDbContext db)
        {
            var users = db.Users.Where(u => u.Albums.Any(a => a.Album.Tags.Count > 3)).Select(a => new
            {
                a.Username,
                AlbumInfo = a.Albums.Select(s => new
                {
                    s.Album.Name,
                    Tags      = s.Album.Tags.Select(t => t.Tag.Title),
                    TagsCount = s.Album.Tags.Count
                }),
                AlbumCount = a.Albums.Count
            }).OrderByDescending(a => a.AlbumCount)
                        .ThenBy(s => s.AlbumInfo.OrderByDescending(f => f.TagsCount))
                        .ThenBy(a => a.Username);

            foreach (var u in users)
            {
                Console.WriteLine($"User: {u.Username}");
                foreach (var alb in u.AlbumInfo)
                {
                    Console.WriteLine($"   Album: {alb.Name}");
                    Console.WriteLine($"    Tags: {string.Join(", ", alb.Tags)}");
                }
            }
        }
Ejemplo n.º 22
0
        private void PrintAlbumsWithOwnersAndPictures(SocialNetworkDbContext context)
        {
            Console.WriteLine("Albums with owners and pictures:");

            var albumsData = context
                             .Albums
                             .Select(a => new
            {
                a.Name,
                Owner    = a.User.Username,
                Pictures = a.Pictures.Select(pa => pa.Picture).Count()
            })
                             .OrderByDescending(a => a.Pictures)
                             .ThenBy(a => a.Owner)
                             .ToList();

            var builder = new StringBuilder();

            foreach (var album in albumsData)
            {
                builder.AppendLine($"{album.Name} - Owner {album.Owner} - Pictures {album.Pictures}");
            }

            Console.WriteLine(builder.ToString());
        }
        public static void PrintPicturesInMoreThanTwoAlbums(SocialNetworkDbContext database)
        {
            var filteredPictures = database.Pictures
                                   .Where(p => p.Albums.Count >= 2)
                                   .Select(p => new
            {
                Title           = p.Title,
                AlbumsTitles    = p.Albums.Select(a => a.Album.Name).ToList(),
                OwnersUsernames = p.Albums.Select(a => a.Album.Creator.Username).ToList()
            })
                                   .OrderByDescending(p => p.AlbumsTitles.Count())
                                   .ThenBy(p => p.Title)
                                   .ToList();

            foreach (var picture in filteredPictures)
            {
                Console.WriteLine($"Picture: {picture.Title}");

                for (int i = 0; i < picture.AlbumsTitles.Count(); i++)
                {
                    Console.WriteLine($"---- Picture in: {picture.AlbumsTitles[i]}");
                    Console.WriteLine($"---- Album owner: {picture.OwnersUsernames[i]}");
                }

                PrintLine();
            }
        }
Ejemplo n.º 24
0
        private void SeedTagsToAlbums()
        {
            Console.WriteLine("Seeding Tags to Albums...");

            using (var context = new SocialNetworkDbContext())
            {
                var albums = context.Albums.ToList();
                var tagIds = context.Tags.Select(t => t.Id).ToList();

                for (int i = 0; i < albums.Count; i++)
                {
                    var currentAlbum = albums[i];
                    var tagsCount    = random.Next(2, MaxTagInAlbum);

                    for (int j = 0; j < tagsCount; j++)
                    {
                        try
                        {
                            currentAlbum.Tags.Add(new AlbumTag
                            {
                                TagId = tagIds[random.Next(0, tagIds.Count)]
                            });

                            context.SaveChanges();
                        }
                        catch (Exception)
                        {
                        }
                    }
                }
            }
        }
Ejemplo n.º 25
0
        private void SeedUsers()
        {
            using var context = new SocialNetworkDbContext(this.ContextOptions);

            context.Database.EnsureDeleted();
            context.Database.EnsureCreated();

            var user = new User
            {
                FirstName = "Test user",
                LastName  = "one",
                Email     = "*****@*****.**"
            };

            var secondUser = new User
            {
                FirstName = "Test user",
                LastName  = "two",
                Email     = "*****@*****.**"
            };

            var thirdUser = new User
            {
                FirstName = "Test user",
                LastName  = "three",
                Email     = "*****@*****.**"
            };

            context.Users.AddRange(user, secondUser, thirdUser);
            context.SaveChanges();
        }
Ejemplo n.º 26
0
        private void PrintUsersThatAreViewersOfAtLeast1Album(SocialNetworkDbContext context)
        {
            Console.WriteLine("Users viewing at least 1 public album:");

            var usersData = context
                            .Users
                            .Select(u => new
            {
                Name         = u.Username,
                PublicAlbums = u.SharedAlbums
                               .Where(sa => sa.Album.IsPublic)
                               .Select(sa => sa.UserRole == UserRole.Viewer)
                               .Count()
            })
                            .Where(u => u.PublicAlbums > 0)
                            .ToList();

            var builder = new StringBuilder();

            foreach (var user in usersData)
            {
                builder.AppendLine($"{user.Name} - Viewing Public Albums {user.PublicAlbums}");
            }

            Console.WriteLine(builder.ToString());
        }
Ejemplo n.º 27
0
        private void PrintAlbumsSharedWithUser(SocialNetworkDbContext context)
        {
            Console.WriteLine("Albums shared with user with pictures count:");

            var userId = context
                         .Users
                         .Where(u => u.SharedAlbums.Any())
                         .Select(u => u.Id)
                         .FirstOrDefault();

            var albumsData = context
                             .Users
                             .Where(u => u.Id == userId)
                             .Select(u => new
            {
                SharedAlbums = u.SharedAlbums.Select(sa => new
                {
                    Name     = sa.Album.Name,
                    Pictures = sa.Album.Pictures.Count
                })
                               .OrderByDescending(a => a.Pictures)
                               .ThenBy(a => a.Name)
                               .ToList()
            })
                             .FirstOrDefault();

            var builder = new StringBuilder();

            foreach (var album in albumsData.SharedAlbums)
            {
                builder.AppendLine($"{album.Name} - Pictures {album.Pictures}");
            }

            Console.WriteLine(builder.ToString());
        }
Ejemplo n.º 28
0
        private void SeedAlbums()
        {
            Console.WriteLine("Seeding Albums...");

            using (var context = new SocialNetworkDbContext())
            {
                var userIds = context.Users.Select(u => u.Id).ToList();

                for (int i = 0; i < userIds.Count; i++)
                {
                    var currentUserId = userIds[i];
                    var userAlbums    = random.Next(0, TotalAlbumsPerUser);

                    for (int j = 0; j < userAlbums; j++)
                    {
                        var isPublic = false;
                        if (j % 3 == 0)
                        {
                            isPublic = true;
                        }

                        context.Albums.Add(new Album
                        {
                            Name            = $"Album {j}/{userIds[i]}",
                            BackgroundColor = "default",
                            UserId          = currentUserId,
                            IsPublic        = isPublic
                        });

                        context.SaveChanges();
                    }
                }
            }
        }
Ejemplo n.º 29
0
        private void PrintAlbumsSharedWithMoreThan2People(SocialNetworkDbContext context)
        {
            Console.WriteLine("Albums shared with more than 2 users:");

            var albumsData = context
                             .Albums
                             .Where(a => a.SharedAlbums.Count > 2)
                             .Select(a => new
            {
                a.Name,
                a.IsPublic,
                People = a.SharedAlbums.Select(sa => sa.User).Count()
            })
                             .OrderByDescending(a => a.People)
                             .ThenBy(a => a.Name)
                             .ToList();


            var builder = new StringBuilder();

            foreach (var album in albumsData)
            {
                var isPublic = album.IsPublic ? "Public" : "Private";

                builder.AppendLine($"{album.Name} - Shared with {album.People} users - {isPublic}");
            }

            Console.WriteLine(builder.ToString());
        }
        public static void PrintUsersWithMoreThanFiveFriends(SocialNetworkDbContext database)
        {
            var filteredUsers = database.Users
                                .Where(u => !u.IsDeleted)
                                .Select(u => new
            {
                Name         = u.Username,
                RegisteredOn = u.RegisteredOn,
                FriendsCount = u.FromFriends.Count + u.ToFriends.Count,
                Period       = DateTime.Now.Subtract(u.RegisteredOn)
            })
                                .Where(u => u.FriendsCount > 5)
                                .OrderBy(u => u.RegisteredOn)
                                .ThenBy(u => u.FriendsCount)
                                .ToList();

            foreach (var user in filteredUsers)
            {
                Console.WriteLine($"User: {user.Name}");
                Console.WriteLine($"Friends count: {user.FriendsCount}");
                Console.WriteLine($"Registered before: {user.Period.Days} days");

                PrintLine();
            }
        }
Ejemplo n.º 31
0
        public static void Main()
        {
            SocialNetworkDbContext dbSocial = new SocialNetworkDbContext();

            using (dbSocial)
            {
                User newUser = new User();
                newUser.Username = "******";
                newUser.FirtsName = "John";
                newUser.LastName = "Snow";
                newUser.RegistrationDate = new System.DateTime(1002, 02, 03);

                dbSocial.Users.Add(newUser);
                dbSocial.SaveChanges();
                System.Console.WriteLine("Database created and user added.");
            }
        }