public async Task <bool> Create(CompanyStatus CompanyStatus)
        {
            CompanyStatusDAO CompanyStatusDAO = new CompanyStatusDAO();

            CompanyStatusDAO.Id   = CompanyStatus.Id;
            CompanyStatusDAO.Code = CompanyStatus.Code;
            CompanyStatusDAO.Name = CompanyStatus.Name;
            DataContext.CompanyStatus.Add(CompanyStatusDAO);
            await DataContext.SaveChangesAsync();

            CompanyStatus.Id = CompanyStatusDAO.Id;
            await SaveReference(CompanyStatus);

            return(true);
        }
        public async Task <bool> BulkMerge(List <CompanyStatus> CompanyStatuses)
        {
            List <CompanyStatusDAO> CompanyStatusDAOs = new List <CompanyStatusDAO>();

            foreach (CompanyStatus CompanyStatus in CompanyStatuses)
            {
                CompanyStatusDAO CompanyStatusDAO = new CompanyStatusDAO();
                CompanyStatusDAO.Id   = CompanyStatus.Id;
                CompanyStatusDAO.Code = CompanyStatus.Code;
                CompanyStatusDAO.Name = CompanyStatus.Name;
                CompanyStatusDAOs.Add(CompanyStatusDAO);
            }
            await DataContext.BulkMergeAsync(CompanyStatusDAOs);

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

            if (CompanyStatusDAO == null)
            {
                return(false);
            }
            CompanyStatusDAO.Id   = CompanyStatus.Id;
            CompanyStatusDAO.Code = CompanyStatus.Code;
            CompanyStatusDAO.Name = CompanyStatus.Name;
            await DataContext.SaveChangesAsync();

            await SaveReference(CompanyStatus);

            return(true);
        }