部分xml序列化/反序列化
是否可以从/串行部分(de)/序列化对象?
class Foo { Bar Bar{get;set;} string XmlJunkAsString{get;set;} }
如此超级,我们希望下面的字符串能够工作……
最终我们可以找到Foo.XmlJunkAsString的内容来包含字符串
反之亦然,当序列化这个特定的Foo实例时,会产生上面的xml。
可能?
我希望[XmlText]
可以工作,但它似乎逃脱了; 你可以实现IXmlSerializable
,但这非常棘手。 以下是丑陋的,但给出了正确的结果(尽管你可能会得到一些xml空白差异)
上述就是C#学习教程:部分xml序列化/反序列化分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!
using System; using System.ComponentModel; using System.Xml; using System.Xml.Serialization; public class Bar { } public class Foo { public Bar Bar { get; set; } [XmlIgnore] public string XmlJunkAsString { get; set; } [XmlElement("XmlJunkAsString"), Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] public XmlElement XmlJunkAsStringSerialized { get { string xml = XmlJunkAsString; if (string.IsNullOrEmpty(xml)) return null; XmlDocument doc = new XmlDocument(); doc.LoadXml(xml); return doc.DocumentElement; } set { XmlJunkAsString = value == null ? null : value.OuterXml; } } } static class Program { static void Main() { var obj = new Foo { Bar = new Bar(), XmlJunkAsString = " " }; var ser = new XmlSerializer(obj.GetType()); ser.Serialize(Console.Out, obj); } }
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/cdevelopment/1039546.html