草庐IT

XMLSerializer

全部标签

c# - XmlSerializer : serializing a class property as an attribute of a custom subelement

我正在使用XmlSerializer。我的类(class):[Serializable][XmlRoot(ElementName="MyClass")]publicclassMyClass{publicstringValue;}我想对其进行序列化,以便Value最终成为名为(例如)“Text”的子元素的属性。期望的结果:但是不是(这是将值标记为XmlAttribute的结果)并且NOT(这将是将Value标记为XmlElement的效果):3我如何实现这一目标?我知道我可以将Value的类型从字符串更改为另一个可序列化的自定义类。不幸的是,我有很多这样的属性,所以我需要创建许多小类。有

c# - 使用特殊字符反序列化 XML 的快速方法

我正在寻找反序列化xml的快速方法,其中包含特殊字符,如ö。我使用的是XMLReader,它无法反序列化这些字符。有什么建议吗?编辑:我正在使用C#。代码如下:XElementelement=..//hasthexmlXmlSerializerserializer=newXmlSerializer(typeof(MyType));XmlReaderreader=element.CreateReader();Objecto=serializer.Deserialize(reader); 最佳答案 我猜你遇到了编码问题,而不是在XMLR

c# - XmlSerializer。跳过 xml 未知节点

我的xml文件反序列化有问题。让我们假设我们有一个xml文件和一个用于反序列化的类。例如:xml-newDataStore1sdffasdfasdfShapefilefalsenewTestWorkspacefalsetrueISO-8859-1shapefiletruefile:data/shapefiles/states.shphttp://www.opengeospatial.net/citefalse类namespaceGeoServerApiTester{///[System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xm

c# - 如何使 XML 反序列化更快?

我有如下一段代码publicstaticobjectXmlDeserialize(stringxml,TypeobjType){StringReaderstream=null;XmlTextReaderreader=null;try{XmlSerializerserializer=newXmlSerializer(objType);stream=newStringReader(xml);//Readxmldatareader=newXmlTextReader(stream);//Createreaderreturnserializer.Deserialize(reader);}fina

c# - XmlSerializer 序列化空变量以使用两个标签?

我希望能够将序列化的xml类加载到SoapEnvelope。我开始了,所以我没有填满内脏,所以它看起来像:我希望它看起来像:`我写的类是这样的:[System.SerializableAttribute()][System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true,Namespace="http://schemas.xmlsoap.org/soap/envelope/")][System.Xml.Serialization.XmlRootAttribute(Namespace="http://schemas.xmlsoa

c# - xml中的额外右括号

我正在使用此示例将一些变量保存到xml文件中:howdoIsetthecurrentclasstothereturntypesresults这是我的设置文件代码:usingSystem;usingSystem.IO;usingSystem.Xml.Serialization;namespacessscc.Settings{publicclassAppSettings{publicstringReceiptLine1{set;get;}publicstringReceiptLine2{set;get;}publicstringReceiptLine3{set;get;}publicstr

javascript - 在使用 XMLSerializer() 序列化 XML 之前从 XML 中删除无效字符

我正在尝试将用户输入存储在客户端(javascript)的XML文档中,并将其传输到服务器以实现持久性。例如,一位用户粘贴了包含STX字符(0x2)的文本。XMLSerializer没有转义STX字符,因此没有序列化为格式正确的XML。或者.attr()调用可能已经转义了STX字符,但无论哪种情况,都会生成无效的XML。我发现浏览器内XMLSerializer()的输出并不总是格式正确,(甚至不满足浏览器自己的DOMParser()这个例子表明STX字符没有被XMLSerializer()正确编码:>doc=$.parseXML('\n');#document>$(doc).find(

c# - 将 xml 反序列化为类,list<> 有问题

我有以下XML我正在尝试编写可以反序列化的类,这就是我所拥有的:[XmlRoot("map")]publicclassMyMap{[XmlAttribute("version")]publicdecimalVersion{get;set;}[XmlElement("properties")]publicListProperties{get;set;}}publicclassMyProperty{[XmlAttribute("name")]publicstringName{get;set;}[XmlAttribute("value")]publicstringValue{get;set;

c# - 如何使用 XmlSerializer 将异构子节点反序列化为一个集合?

我正在使用C#/.NET反序列化一个类似于此的XML文件:""""""...""...MoreBooknodes...我的类,对于反序列化的XML,看起来像:[XmlRoot("Books")]publicclassBookList{//Othercoderemovedforcompactness.[XmlElement("Book")]publicListBooks{get;set;}}publicclassBook{//Othercoderemovedforcompactness.[XmlAttribute("Title")]publicstringTitle{get;set;}[

c# - XmlSerializer 在 .NET 3.5 和 CF.NET 3.5 之间有所不同

我有一个在CF.NET和.NET下运行的库,但两者之间的序列化不同。因此,在CF.NET下生成的XML文件在.NET下不可读,这对我来说是个大问题!这里是代码示例:[Serializable,XmlRoot("config")]publicsealedclassRemoteHost:IEquatable{//...}publicclassProgram{publicstaticvoidMain(){RemoteHosthost=newRemoteHost("A");Listhosts=newList();hosts.Add(host);XmlSerializerser=newXmlSe