/// <summary> /// XMLs this instance. /// </summary> /// <returns></returns> public string Xml() { UPXmlMemoryWriter xmlWriter = new UPXmlMemoryWriter(); this.Serialize(xmlWriter); return(xmlWriter.XmlContentString()); }
/// <summary> /// Offlines the request XML. /// </summary> /// <returns></returns> public string OfflineRequestXml() { List <UPOfflineRequest> conflictRequests = this.ConflictRequests; UPXmlMemoryWriter writer = new UPXmlMemoryWriter(); writer.WriteElementStart("Requests"); if (conflictRequests != null) { foreach (UPOfflineRequest request in conflictRequests) { request.Serialize(writer); } } writer.WriteElementEnd(); return(writer.XmlContentString()); }
/// <summary> /// Calculates the client report from cached result. /// </summary> /// <returns></returns> public string CalcClientReportFromCachedResult() { int count = this.ClientReports.Count; string xslString = string.Empty; TimeSpan timeInterval = DateExtensions.TimeIntervalSinceReferenceDate(DateTime.UtcNow); if (!string.IsNullOrEmpty(this.XslName)) { //string xslFileName = ServerSession.CurrentSession.FileStore.ImagePathForName(this.XslName); //xslFileName = xslFileName.StringByAddingPercentEscapesUsingEncoding(NSUTF8StringEncoding); //xslString = $"<?xml-stylesheet type=\"text/xsl\" href=\"{xslFileName}?time={timeInterval}\"?>"; } UPXmlMemoryWriter writer = new UPXmlMemoryWriter(); if (!string.IsNullOrEmpty(this.RootXmlName)) { writer.WriteElementStart(this.RootXmlName); } else { writer.WriteElementStart("Results"); } for (int i = 0; i < count; i++) { object result = this.resultsForClientReports[i]; if (result != null) { UPWebContentClientReport clientReport = this.ClientReports[i]; ((UPCRMResult)result).SerializeRootElementName(writer, clientReport.RootNodeName); } } //for (int j = 0; j < signatureImageTagNames.Count && j < signaturePathNames.Count; j++) //{ // writer.WriteElementValue(signatureImageTagNames[j], $"{signaturePathNames[j]}?time={timeInterval}"); //} writer.WriteLocaleSettingsElement(); writer.WriteElementEnd(); return($"<?xml version=\"1.0\" encoding=\"UTF-8\"?>{xslString}{writer.XmlContentStringAmpDecoded()}"); }