/// <exclude /> public static XslCompiledTransform GetCompiledXsltTransform(string stylesheetPath) { lock (_lock) { DateTime lastXsltFileWrite = C1File.GetLastWriteTime(stylesheetPath); bool compiledVersionExists = _xsltLookup.ContainsKey(stylesheetPath); bool reloadFresh = (DateTime.Now - lastXsltFileWrite).Minutes < 30; if (compiledVersionExists == false || lastXsltFileWrite > _xsltFileTimestamps[stylesheetPath] || reloadFresh) { XslCompiledTransform xslt = new XslCompiledTransform(); using (XmlReader reader = XmlReaderUtils.Create(stylesheetPath)) { xslt.Load(reader); } if (compiledVersionExists) { _xsltLookup.Remove(stylesheetPath); _xsltFileTimestamps.Remove(stylesheetPath); } _xsltLookup.Add(stylesheetPath, xslt); _xsltFileTimestamps.Add(stylesheetPath, lastXsltFileWrite); } } return(_xsltLookup[stylesheetPath]); }
protected override void Render(HtmlTextWriter writer) { string path = Server.MapPath("../../../templates/defaultstagedeck.xml"); XmlDocument doc = new XmlDocument(); XmlReaderSettings settings = new XmlReaderSettings(); settings.IgnoreComments = true; using (XmlReader reader = XmlReaderUtils.Create(path, settings)) { doc.Load(reader); } writer.Write(doc.DocumentElement.OuterXml); }
private static XDocument TryLoad(C1FileInfo candidateFile) { XDocument dataDocument = null; try { XmlReaderSettings xmlReaderSettings = new XmlReaderSettings(); xmlReaderSettings.CheckCharacters = false; using (XmlReader xmlReader = XmlReaderUtils.Create(candidateFile.FullName, xmlReaderSettings)) { dataDocument = XDocument.Load(xmlReader); } } catch (Exception) { // broken file - should not stop us... } return(dataDocument); }
private static XDocument TryLoad(C1FileInfo candidateFile, ref string errorCause) { XDocument dataDocument = null; try { var xmlReaderSettings = new XmlReaderSettings { CheckCharacters = false }; using (XmlReader xmlReader = XmlReaderUtils.Create(candidateFile.FullName, xmlReaderSettings)) { dataDocument = XDocument.Load(xmlReader); } } catch (Exception ex) { errorCause = ex.Message; // broken file - should not stop us... } return(dataDocument); }