public ReportCategoryModel GetReportCategoryByPrimaryKey(Int64 CategoryId)
        {
            ReportCategory result = this.dataContext
                                    .ReportCategories
                                    .FirstOrDefault(pk => pk.CategoryId == CategoryId);

            if (result == null)
            {
                return(null);
            }

            return(result.CopyToObject(new ReportCategoryModel()) as ReportCategoryModel);
        }
        public void UpdateReportCategory(ReportCategoryModel model)
        {
            ReportCategory existing = this.dataContext
                                      .ReportCategories
                                      .Where(rx => rx.CategoryId == model.CategoryId)
                                      .FirstOrDefault();

            if (existing == null)
            {
                existing = model.CopyToObject(new ReportCategory()) as ReportCategory;

                this.dataContext.ReportCategories.Add(existing);
            }
            else
            {
                existing = model.CopyToObject(existing) as ReportCategory;
            }

            this.dataContext.SaveChanges();

            model = existing.CopyToObject(model) as ReportCategoryModel;
        }