Beispiel #1
0
        new public void UpdateReportXML(ReportXMLModel model)
        {
            if (model.IsActiveVersion)
            {
                foreach (ReportXML xml in this.dataContext.ReportsXML.Where(rm => rm.MasterReport_Id == model.MasterReport_Id))
                {
                    xml.IsActiveVersion = false;
                }
            }

            ReportXML existing = this.dataContext
                                 .ReportsXML
                                 .Where(rx => rx.ReportXMLVersion == model.ReportXMLVersion && rx.MasterReport_Id == model.MasterReport_Id)
                                 .FirstOrDefault();

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

                this.dataContext.ReportsXML.Add(existing);
            }
            else
            {
                existing = model.CopyToObject(existing) as ReportXML;
            }

            this.dataContext.SaveChanges();

            model = existing.CopyToObject(model) as ReportXMLModel;
        }
        public ReportXMLModel GetReportXMLByPrimaryKey(int ReportXMLVersion, Int64 MasterReport_Id)
        {
            ReportXML result = this.dataContext
                               .ReportsXML
                               .FirstOrDefault(pk => pk.ReportXMLVersion == ReportXMLVersion && pk.MasterReport_Id == MasterReport_Id);

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

            return(result.CopyToObject(new ReportXMLModel()) as ReportXMLModel);
        }