예제 #1
0
        public async Task <int> DeleteListWithAllTask(int listId)
        {
            int rowAffacted = 0;

            using (IDbContextTransaction transection = _ternContext.Database.BeginTransaction())
            {
                try
                {
                    List <Domain.Task> tasks = _ternContext.Tasks.Where(x => x.ListId == listId).ToList();
                    _ternContext.Tasks.RemoveRange(tasks);
                    rowAffacted += await _ternContext.SaveChangesAsync();

                    Domain.List list = new Domain.List {
                        ListId = listId
                    };
                    _ternContext.Lists.Attach(list);
                    _ternContext.Lists.Remove(list);
                    rowAffacted += await _ternContext.SaveChangesAsync();

                    await transection.CommitAsync();
                }
                catch (Exception e)
                {
                    throw e;
                }
            }
            return(0);
        }
예제 #2
0
        public async Task <int> DeleteList(int listId)
        {
            int rowAffacted = 0;

            try
            {
                Domain.List list = new Domain.List {
                    ListId = listId
                };
                _ternContext.Lists.Attach(list);
                _ternContext.Lists.Remove(list);
                rowAffacted = await _ternContext.SaveChangesAsync();

                return(rowAffacted);
            }
            catch (Exception e)
            {
                throw e;
            }
        }