public SimpleIntegrationTest() { _databaseName = Guid.NewGuid().ToString(); var serviceProvider = new ServiceCollection() .AddEntityFrameworkSqlServer() .BuildServiceProvider(); var builder = new DbContextOptionsBuilder <InterestsDbContext>(); builder.UseSqlServer($"Server=127.0.0.1,1433;Database=SeekQ.Interests.{_databaseName};User Id=sa;Password=Password123") .UseInternalServiceProvider(serviceProvider); _interestsDbContext = new InterestsDbContext(builder.Options); _interestsDbContext.Database.Migrate(); // _repository = new DemoRepository(_dbContext); }
public Handler(InterestsDbContext interestsDbContext) { _interestsDbContext = interestsDbContext; }
// GET: Profile public ActionResult Index(ProfileViewModel model, string profileId) { var userId = User.Identity.GetUserId(); if (userId != null) { var userContext = new UserDbContext(); var friendContext = new FriendsDbContext(); var postContext = new PostDbContext(); var interestContext = new InterestsDbContext(); //Checks if the current user is the owner of the profile if (userId != profileId && profileId != null) { userId = profileId; } ; var user = userContext.Users.FirstOrDefault(u => u.UserId == userId); List <InterestsModel> interestsList = interestContext.Friends.Where(u => u.UserId == userId).ToList(); List <FriendsModel> friendList = friendContext.Friends.Where (u => u.UserId == userId).ToList(); List <PostModel> PostList = postContext.Friends.Where(u => u.RecipientId == userId).ToList(); var UserPostList = new List <UserPostViewModel>(); //Puts all posts to the user in a viewmodel with post- and user info foreach (var item in PostList) { UserModel userInfo = userContext.Users.FirstOrDefault(u => u.UserId == item.PosterId); var modelView = new UserPostViewModel { PostId = item.PostId, PosterId = item.PosterId, RecipientId = item.RecipientId, Content = item.Content, Date = item.Date, ProfilePicUrl = userInfo.ProfilePicUrl, FirstName = userInfo.FirstName, LastName = userInfo.LastName, }; UserPostList.Add(modelView); } var UserDict = new Dictionary <UserModel, string>(); //Puts all friends in a dictionary and pairs them with their appointed category foreach (var item in friendList) { UserDict.Add(userContext.Users.FirstOrDefault(u => u.UserId == item.FriendId), item.Category); } model.UserId = user.UserId; model.FirstName = user.FirstName; model.LastName = user.LastName; model.Gender = user.Gender; model.SexualOrientation = user.SexualOrientation; model.ZodiacSign = user.ZodiacSign; model.ProfilePicUrl = user.ProfilePicUrl; model.BirthDate = user.BirthDate; model.Country = user.Country; model.Friends = UserDict; model.Compatibility = CheckCompatibility(user.UserId); model.Posts = UserPostList; model.Interests = interestsList; return(View(model)); } return(View("~/Views/Home/index.cshtml")); }