public XDocument GetReportXml(long masterReport_Id) { ReportXML report = this.dataContext .ReportsXML .FirstOrDefault(r => r.MasterReport_Id == masterReport_Id && r.IsActiveVersion == true); if (report == null) { int reportXMLVersion = this.dataContext .ReportsXML .Where(r => r.MasterReport_Id == masterReport_Id) .Max(m => m.ReportXMLVersion); report = this.dataContext .ReportsXML .FirstOrDefault(xml => xml.MasterReport_Id == masterReport_Id && xml.ReportXMLVersion == reportXMLVersion); } if (report == null) { return(null); } string rawXml = report.BinaryXML.UnzipFile().ParseToString(); return(XDocument.Parse(rawXml)); }
public void UpdateXmlPrinteCount(long masterReport_Id) { ReportXML exists = this.dataContext .ReportsXML .FirstOrDefault(e => e.MasterReport_Id == masterReport_Id); if (exists == null) { return; } int reportXMLVersion = this.dataContext .ReportsXML .Where(r => r.MasterReport_Id == masterReport_Id) .Max(m => m.ReportXMLVersion); ReportXML report = this.dataContext .ReportsXML .FirstOrDefault(xml => xml.MasterReport_Id == masterReport_Id && xml.ReportXMLVersion == reportXMLVersion); ++report.PrintCount; this.dataContext.SaveChanges(); }
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 bool IsActiveVersion(long masterReport_Id, int reportXMLVersion) { ReportXML xml = base.dataContext .ReportsXML .FirstOrDefault(rx => rx.MasterReport_Id == masterReport_Id && rx.ReportXMLVersion == reportXMLVersion); return(xml == null ? false : xml.IsActiveVersion); }
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); }
public int GetReportXMLVersion(long MasterReport_Id) { ReportXML model = this.dataContext .ReportsXML .FirstOrDefault(r => r.MasterReport_Id == MasterReport_Id && r.IsActiveVersion == true); if (model != null) { return(model.ReportXMLVersion); } int result = this.dataContext .ReportsXML .Where(r => r.MasterReport_Id == MasterReport_Id) .Max(m => m.ReportXMLVersion); if (result == 0) { return(1); } return(result); }