public ReportXMLPrintParameterModel GetReportXMLPrintParameterByPrimaryKey(string TableName, string ColumnName, int ReportXMLVersion, Int64 MasterReport_Id)
        {
            ReportXMLPrintParameter result = this.dataContext
                                             .ReportXMLPrintParameters
                                             .FirstOrDefault(pk => pk.TableName == TableName && pk.ColumnName == ColumnName && pk.ReportXMLVersion == ReportXMLVersion && pk.MasterReport_Id == MasterReport_Id);

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

            return(result.CopyToObject(new ReportXMLPrintParameterModel()) as ReportXMLPrintParameterModel);
        }
        public void UpdateReportXMLPrintParameter(ReportXMLPrintParameterModel model)
        {
            ReportXMLPrintParameter existing = this.dataContext
                                               .ReportXMLPrintParameters
                                               .Where(rx => rx.TableName == model.TableName && rx.ColumnName == model.ColumnName && rx.ReportXMLVersion == model.ReportXMLVersion && rx.MasterReport_Id == model.MasterReport_Id)
                                               .FirstOrDefault();

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

                this.dataContext.ReportXMLPrintParameters.Add(existing);
            }
            else
            {
                existing = model.CopyToObject(existing) as ReportXMLPrintParameter;
            }

            this.dataContext.SaveChanges();

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