コード例 #1
0
        public static async Task <bool> insertUserAsync(string uName, string uEmail, string uPass)
        {
            moviesProjectContext context = new moviesProjectContext();

            bool flag = true;

            try
            {
                //query = "INSERT INTO `users` (`userEmail`, `userName` , `userPassword`) VALUES('" + uEmail + "', '" + uName + "', '" + uPass + "')";
                await context.Users.AddAsync(new User()
                {
                    UserEmail    = uEmail,
                    UserName     = uName,
                    UserPassword = uPass,
                    IsAdmin      = false
                });

                await context.SaveChangesAsync();
            }
            catch (Exception e)
            {
                flag = false;
            }

            return(flag);
        }
コード例 #2
0
        public static async Task <bool> insertRatingAsync(int movieId, string userEmail, string commentContent, bool like)
        {
            bool flag = true;

            try
            {
                //String query = "REPLACE INTO ratings VALUES (0," + movieId + ",'" + userEmail+"','"+commentContent+"',"+like+")";

                moviesProjectContext context = new moviesProjectContext();
                if (await context.Ratings.AsQueryable().AnyAsync(x => x.UserEmail == userEmail && x.MovieId == movieId))
                {
                    var item = await context.Ratings.AsQueryable().SingleAsync(x => x.UserEmail == userEmail && x.MovieId == movieId);

                    item.Like           = like;
                    item.CommentContent = commentContent;
                }
                else
                {
                    await context.Ratings.AddAsync(new Rating()
                    {
                        UserEmail      = userEmail,
                        MovieId        = movieId,
                        CommentContent = commentContent,
                        Like           = like
                    });
                }

                await context.SaveChangesAsync();
            }
            catch (Exception ex)
            {
                flag = false;
            }
            return(flag);
        }
コード例 #3
0
        public static async Task <bool> removeFromWLAsync(string uEmail, int MovieId)
        {
            moviesProjectContext context = new moviesProjectContext();

            try
            {
                List <Movie> MovieList = new List <Movie>();
                // query = "DELETE FROM `watchlist` WHERE userEmail='" + uEmail + "' AND movieId=" + MovieId + "";
                var itemToRemove = await context.Watchlists.AsQueryable().SingleOrDefaultAsync(x => x.MovieId == MovieId && x.UserEmail.ToUpper() == uEmail.ToUpper()); //returns a single item.

                if (itemToRemove != null)
                {
                    context.Watchlists.Remove(itemToRemove);
                    await context.SaveChangesAsync();
                }
            }
            catch (Exception ex)
            {
                return(false);
            }
            return(true);
        }
コード例 #4
0
        public static async Task <bool> insertInWLAsync(string uEmail, int MovieId)
        {
            moviesProjectContext context = new moviesProjectContext();

            try
            {
                //query = "INSERT INTO `watchlist` (`userEmail`, `movieId` ) VALUES('" + uEmail + "', " + MovieId + ")";
                await context.Watchlists.AddAsync(new Watchlist()
                {
                    UserEmail = uEmail,
                    MovieId   = MovieId
                });

                await context.SaveChangesAsync();
            }
            catch (Exception ex)
            {
                return(false);
            }


            return(true);
        }
コード例 #5
0
        public static async Task <bool> ChangePass(string uEmail, string uPass, string newPass)
        {
            moviesProjectContext context = new moviesProjectContext();

            bool flag = false;

            try
            {
                if (await context.Users.AsQueryable().AnyAsync(x => x.UserEmail == uEmail && x.UserPassword == uPass))
                {
                    var item = await context.Users.AsQueryable().SingleAsync(x => x.UserEmail == uEmail && x.UserPassword == uPass);

                    item.UserPassword = newPass;
                    flag = true;
                }
                await context.SaveChangesAsync();
            }
            catch (Exception e)
            {
                flag = false;
            }

            return(flag);
        }
コード例 #6
0
        public static async Task <bool> deleteRatingAsync(int movieId, string userEmail)
        {
            moviesProjectContext context = new moviesProjectContext();
            bool flag = true;

            try
            {
                //String query = "DELETE  FROM RATINGS WHERE movieId = '" + movieId + "' AND userEmail = '"+userEmail+"'";

                var itemToRemove = await context.Ratings.AsQueryable().SingleOrDefaultAsync(x => x.MovieId == movieId && x.UserEmail == userEmail); //returns a single item.

                if (itemToRemove != null)
                {
                    context.Ratings.Remove(itemToRemove);
                    await context.SaveChangesAsync();
                }
            }
            catch (Exception e)
            {
                flag = false;
            }

            return(flag);
        }