コード例 #1
0
        public async Task <ActionResult> ChangePage(int?numberOfType, int?namberOfPeage)
        {
            var listLetters = new List <ITypesOfLetter>();

            var userId = WebSecurity.CurrentUserId;

            if (numberOfType != null && numberOfType < 3)
            {
                using (var db = new DataBaseContext())
                {
                    listLetters = await db.listTypesOfLetter[(int)numberOfType].Where(x => x.OrderUser.Id == userId).OrderByDescending(x => x.Data).ToListAsync();
                }
            }

            return(Content(CustomHelperMetods.MyGrid(listLetters, namberOfPeage.ToString())));
        }
コード例 #2
0
        public async Task <ActionResult> DeleteAllSelected(int[] arrayIdOfLetters, int?numberOfType, int?namberOfPeage)
        {
            var listLetters = new List <ITypesOfLetter>();

            if (arrayIdOfLetters != null)
            {
                var userId = WebSecurity.CurrentUserId;
                using (var db = new DataBaseContext())
                {
                    if (numberOfType != null && numberOfType < 3)
                    {
                        var listTypeOfLetter = await(db.listTypesOfLetter[(int)numberOfType]
                                                     .Join(arrayIdOfLetters, x => x.Id, y => y, (x, y) => x)
                                                     .Where(x => x.OrderUser.Id == userId))
                                               .Include(x => x.LetterForDB).ToListAsync();

                        if (listTypeOfLetter != null)
                        {
                            foreach (var typeOfLetter in listTypeOfLetter)
                            {
                                typeOfLetter.LetterForDB.NumberOfOwners--;

                                if (typeOfLetter.LetterForDB.NumberOfOwners == 0)
                                {
                                    db.Entry(typeOfLetter.LetterForDB).State = EntityState.Deleted;
                                }
                                else
                                {
                                    db.Entry(typeOfLetter.LetterForDB).State = EntityState.Modified;
                                }
                                db.Entry(typeOfLetter).State = EntityState.Deleted;
                            }
                        }
                    }
                    db.SaveChanges();
                    listLetters = await db.listTypesOfLetter[(int)numberOfType].Where(x => x.OrderUser.Id == userId).OrderByDescending(x => x.Data).ToListAsync();
                }
            }
            return(Content(CustomHelperMetods.MyGrid(listLetters, namberOfPeage.ToString())));
        }