##// END OF EJS Templates
Merge pull request !2 from ImplabNet v3...
Merge pull request !2 from ImplabNet v3 Changes from branch: V3

File last commit:

r289:95896f882995 v3.0.14 v3
r294:abef3ebaa230 merge default
Show More
XmlToJson.cs
32 lines | 967 B | text/x-csharp | CSharpLexer
using System;
using System.IO;
using System.Reflection;
using System.Xml;
using System.Xml.Xsl;
using Implab.Components;
using Implab.Formats.Json;
namespace Implab.Xml {
public class XmlToJson {
const string XmlToJsonTransformId = "Implab.Xml.json.xsl";
static LazyAndWeak<XslCompiledTransform> m_default = new LazyAndWeak<XslCompiledTransform>(CreateTransform, true);
public static XslCompiledTransform Default {
get { return m_default.Value; }
}
protected static XslCompiledTransform CreateTransform() {
var transform = new XslCompiledTransform();
using(var reader = XmlReader.Create(GetDefaultTransform())) {
transform.Load(reader);
}
return transform;
}
protected static Stream GetDefaultTransform() {
return Assembly.GetExecutingAssembly().GetManifestResourceStream(XmlToJsonTransformId);
}
}
}