Refactor
:my
=>
'code'
Codes
Refactorings
Popular
Best
Submit
Spam
Account
Logout
Login
JavaScript doesn't seem to be activated, expect things to be ugly and sloppy!
Learn How to Create Your Own Programming Language
createyourproglang.com
Recent
Simple Particle Engine for a shooter game
Snake / Nibbles clone in C and Ncurses
Please improve
Parsing of XML data has high CPU usage
Convert simple Javascript to jQuery plugin
Active Record getting unique records
List the files in a directory without the directory name or the extension
clean the code
ohs system, recruitment software, hr software, oh&s software, human resources software, ohs software
Array parsing in a block
Popular
Parsing of XML data has high CPU usage
Please improve
Snake / Nibbles clone in C and Ncurses
List the files in a directory without the directory name or the extension
Convert simple Javascript to jQuery plugin
Simple Particle Engine for a shooter game
Active Record getting unique records
Breadth first cartesian product iterator
php refactoring
first BST
Pastable version of
XML Object Serializer to XSLT Transformer
<pre class='prettyprint' language='cs'>public static class ObjectToXmlConverter { #region Class Methods /// <summary> /// Renders the specified serializable obj. /// </summary> /// <param name="serializableObj">The serializable obj.</param> /// <returns></returns> public static string Render<T>(T serializableObj) { if (!typeof (T).IsSerializable) throw new SerializationException(string.Format("{0} is not marked Serializable.", typeof(T))); var xmls = new XmlSerializer(typeof (T)); using (var ms = new MemoryStream()) { var settings = new XmlWriterSettings { Encoding = Encoding.UTF8, Indent = true, IndentChars = "\t", NewLineChars = Environment.NewLine, ConformanceLevel = ConformanceLevel.Document }; using (var writer = XmlWriter.Create(ms, settings)) { xmls.Serialize(writer, serializableObj); } string xml = Encoding.UTF8.GetString(ms.ToArray()); if (xml.Length > 0 && xml[0] != '<') { xml = xml.Substring(1, xml.Length - 1); } return xml; } } #endregion } public static class XsltTransformer { #region Class Methods /// <summary> /// Renders the specified serializable obj. /// </summary> /// <typeparam name="T"></typeparam> /// <param name="serializableObj">The serializable obj.</param> /// <param name="xsltPath">The XSLT path.</param> public static XmlDocument Render<T>(T serializableObj, string xsltPath) { var rawXml = ObjectToXmlConverter.Render(serializableObj); rawXml = StripInvalidCharacters(rawXml); var document = new XmlDocument(); document.LoadXml(rawXml); var xDoc = XDocument.Load(new XmlNodeReader(document)); var transformedDoc = new XDocument(); using (var writer = transformedDoc.CreateWriter()) { var transform = new XslCompiledTransform(); transform.Load(XmlReader.Create(new StreamReader(xsltPath))); transform.Transform(xDoc.CreateReader(), writer); } var xmlDocument = new XmlDocument(); xmlDocument.Load(transformedDoc.CreateReader()); return xmlDocument; } /// <summary> /// Strips the illegal characters. /// </summary> /// <param name="rawXml">The raw XML.</param> /// <returns></returns> private static string StripInvalidCharacters(string rawXml) { rawXml = rawXml.Replace("\r", string.Empty).Replace("\n", string.Empty).Replace("\t", string.Empty); return rawXml; } #endregion }</pre> <a href="http://www.refactormycode.com/codes/1049-xml-object-serializer-to-xslt-transformer" style="color:#fff" title="As seen on RefactorMyCode.com"><img alt="Small_logo" src="http://www.refactormycode.com/images/small_logo.gif" style="border:0" /></a>