.net xml web-services .net-4.5 xml-1.1

¿.Net 4.5 es compatible con XML 1.1 todavía(para caracteres no válidos en XML 1.0)?



web-services .net-4.5 (2)

Estoy seguro de que esta no es la mejor opción, pero si descargas IKVM puedes usar clases Java en tu código .Net después de hacer referencia a algunos ensambles (en realidad, código .Net :))

var fXmlFile = new java.io.File(xmlfile); var dbFactory = javax.xml.parsers.DocumentBuilderFactory.newInstance(); var dBuilder = dbFactory.newDocumentBuilder(); var doc = dBuilder.parse(fXmlFile); var nList = doc.getElementsByTagName("controlcharacters"); var chars = nList.item(0).getTextContent().ToCharArray();

Archivo XML:

<?xml version="1.1" ?> <root> <controlcharacters>&#14;&#15;</controlcharacters> </root>

Esto es en el contexto de los servicios web (cliente final). Necesito una interfaz con un sistema de back-end (Java) y es un requisito para transmitir algunos caracteres de control en el &#14; y &#31; distancia.

Soy consciente de que XML 1.0 no es compatible con esto, pero estoy interesado en saber si la plataforma .NET 4 o el marco de servicios web .NET 4.5 admiten conversaciones en XML 1.1.


No, no parece que XmlReader (el núcleo de gran parte del soporte XML en .NET) sea compatible con 1.1:

using System; using System.IO; using System.Xml; class Program { static void Main(string[] args) { string xml = "<?xml version=/"1.1/" ?><tag>&#x1</tag>"; var reader = XmlReader.Create(new StringReader(xml)); while (reader.Read()); } }

Salida:

Unhandled Exception: System.Xml.XmlException: Version number ''1.1'' is invalid. Line 1, position 16.

He consultado XmlReaderSettings para ver si hay algo que ayude, pero no creo que sea así. Básicamente, creo que estás estancado por el momento :(

EDITAR: leyendo un poco XML 1.1, parece que no se ha implementado o recomendado ampliamente, por lo que no estoy especialmente sorprendido de que no sea compatible con .NET 4.5. Supongo que nunca lo será, dado que no es una recomendación particularmente nueva. La versión más reciente es la segunda edición, que data de 2006. Si no es compatible siete años después, sospecho que tendrá que haber algún evento importante para que valga la pena apoyarlo en el futuro.