public async Task <MemeUserSession> FetchMemeSession(int userId)
        {
            var session = await _context.MemeUserSessions
                          .FirstOrDefaultAsync(s => s.UserId == userId);

            if (session == null)
            {
                session = new MemeUserSession()
                {
                    UserId = userId
                };
                (await _context.Users.FirstAsync(u => u.Id == userId)).MemeSession = session;
                await _context.MemeUserSessions.AddAsync(session);
            }
            return(session);
        }
 private void UpdateMemeSessionAsync(IEnumerable <MemeModel> memes, MemeUserSession session)
 {
     session.LastMemeId  = memes.Last().Core.Id;
     session.FirstMemeId = memes.First().Core.Id;
     _sessions.SaveChanges();
 }