public async Task <bool> Create(ContractFileGrouping ContractFileGrouping)
        {
            ContractFileGroupingDAO ContractFileGroupingDAO = new ContractFileGroupingDAO();

            ContractFileGroupingDAO.Id          = ContractFileGrouping.Id;
            ContractFileGroupingDAO.Title       = ContractFileGrouping.Title;
            ContractFileGroupingDAO.Description = ContractFileGrouping.Description;
            ContractFileGroupingDAO.ContractId  = ContractFileGrouping.ContractId;
            ContractFileGroupingDAO.CreatorId   = ContractFileGrouping.CreatorId;
            ContractFileGroupingDAO.FileTypeId  = ContractFileGrouping.FileTypeId;
            ContractFileGroupingDAO.RowId       = ContractFileGrouping.RowId;
            ContractFileGroupingDAO.CreatedAt   = StaticParams.DateTimeNow;
            ContractFileGroupingDAO.UpdatedAt   = StaticParams.DateTimeNow;
            DataContext.ContractFileGrouping.Add(ContractFileGroupingDAO);
            await DataContext.SaveChangesAsync();

            ContractFileGrouping.Id = ContractFileGroupingDAO.Id;
            await SaveReference(ContractFileGrouping);

            return(true);
        }
        public async Task <bool> BulkMerge(List <ContractFileGrouping> ContractFileGroupings)
        {
            List <ContractFileGroupingDAO> ContractFileGroupingDAOs = new List <ContractFileGroupingDAO>();

            foreach (ContractFileGrouping ContractFileGrouping in ContractFileGroupings)
            {
                ContractFileGroupingDAO ContractFileGroupingDAO = new ContractFileGroupingDAO();
                ContractFileGroupingDAO.Id          = ContractFileGrouping.Id;
                ContractFileGroupingDAO.Title       = ContractFileGrouping.Title;
                ContractFileGroupingDAO.Description = ContractFileGrouping.Description;
                ContractFileGroupingDAO.ContractId  = ContractFileGrouping.ContractId;
                ContractFileGroupingDAO.CreatorId   = ContractFileGrouping.CreatorId;
                ContractFileGroupingDAO.FileTypeId  = ContractFileGrouping.FileTypeId;
                ContractFileGroupingDAO.RowId       = ContractFileGrouping.RowId;
                ContractFileGroupingDAO.CreatedAt   = StaticParams.DateTimeNow;
                ContractFileGroupingDAO.UpdatedAt   = StaticParams.DateTimeNow;
                ContractFileGroupingDAOs.Add(ContractFileGroupingDAO);
            }
            await DataContext.BulkMergeAsync(ContractFileGroupingDAOs);

            return(true);
        }
        public async Task <bool> Update(ContractFileGrouping ContractFileGrouping)
        {
            ContractFileGroupingDAO ContractFileGroupingDAO = DataContext.ContractFileGrouping.Where(x => x.Id == ContractFileGrouping.Id).FirstOrDefault();

            if (ContractFileGroupingDAO == null)
            {
                return(false);
            }
            ContractFileGroupingDAO.Id          = ContractFileGrouping.Id;
            ContractFileGroupingDAO.Title       = ContractFileGrouping.Title;
            ContractFileGroupingDAO.Description = ContractFileGrouping.Description;
            ContractFileGroupingDAO.ContractId  = ContractFileGrouping.ContractId;
            ContractFileGroupingDAO.CreatorId   = ContractFileGrouping.CreatorId;
            ContractFileGroupingDAO.FileTypeId  = ContractFileGrouping.FileTypeId;
            ContractFileGroupingDAO.RowId       = ContractFileGrouping.RowId;
            ContractFileGroupingDAO.UpdatedAt   = StaticParams.DateTimeNow;
            await DataContext.SaveChangesAsync();

            await SaveReference(ContractFileGrouping);

            return(true);
        }