河西做网站公司,中国电商公司排名,网站开发语言检测,泉州网站建设托管有如下XML#xff0c;Index_0-Index_N为动态的#xff0c;N为可变数#xff0c;如何将对象NoneXML序列化为XML#xff0c;以及如何将XML内容反序列化为对象NoneXML#xff1f;1、XML内容NoneXMLIndex_0UseInSummary0/UseInSummaryBeg…有如下XMLIndex_0-Index_N为动态的N为可变数如何将对象NoneXML序列化为XML以及如何将XML内容反序列化为对象NoneXML1、XML内容NoneXMLIndex_0UseInSummary0/UseInSummaryBeginLeft0/BeginLeftIsSubSectioned0/IsSubSectionedFileNameNX20250605000/FileNameTransectNmb000/TransectNmbTotalNmbEnsembles13/TotalNmbEnsemblesTotalBadEnsembles0/TotalBadEnsemblesTotalLostEnsembles0/TotalLostEnsembles/Index_0Index_1UseInSummary0/UseInSummaryBeginLeft1/BeginLeftIsSubSectioned0/IsSubSectionedFileNameNX20250605001/FileNameTransectNmb001/TransectNmbTotalNmbEnsembles14/TotalNmbEnsemblesTotalBadEnsembles0/TotalBadEnsemblesTotalLostEnsembles0/TotalLostEnsembles/Index_1Index_2UseInSummary1/UseInSummaryBeginLeft0/BeginLeftIsSubSectioned0/IsSubSectionedFileNameNX20250605002/FileNameTransectNmb002/TransectNmbTotalNmbEnsembles18/TotalNmbEnsemblesTotalBadEnsembles0/TotalBadEnsemblesTotalLostEnsembles0/TotalLostEnsembles/Index_2Index_3UseInSummary1/UseInSummaryBeginLeft1/BeginLeftIsSubSectioned0/IsSubSectionedFileNameNX20250605003/FileNameTransectNmb003/TransectNmbTotalNmbEnsembles12/TotalNmbEnsemblesTotalBadEnsembles0/TotalBadEnsemblesTotalLostEnsembles0/TotalLostEnsembles/Index_3Index_4UseInSummary1/UseInSummaryBeginLeft0/BeginLeftIsSubSectioned0/IsSubSectionedFileNameNX20250605004/FileNameTransectNmb004/TransectNmbTotalNmbEnsembles16/TotalNmbEnsemblesTotalBadEnsembles0/TotalBadEnsemblesTotalLostEnsembles0/TotalLostEnsembles/Index_4Index_5UseInSummary1/UseInSummaryBeginLeft1/BeginLeftIsSubSectioned0/IsSubSectionedFileNameNX20250605005/FileNameTransectNmb005/TransectNmbTotalNmbEnsembles15/TotalNmbEnsemblesTotalBadEnsembles0/TotalBadEnsemblesTotalLostEnsembles0/TotalLostEnsembles/Index_5
/NoneXMLXML内容也可能是NoneXMLIndex_0UseInSummary0/UseInSummaryBeginLeft0/BeginLeftIsSubSectioned0/IsSubSectionedFileNameNX20250605000/FileNameTransectNmb000/TransectNmbTotalNmbEnsembles13/TotalNmbEnsemblesTotalBadEnsembles0/TotalBadEnsemblesTotalLostEnsembles0/TotalLostEnsembles/Index_0Index_1UseInSummary0/UseInSummaryBeginLeft1/BeginLeftIsSubSectioned0/IsSubSectionedFileNameNX20250605001/FileNameTransectNmb001/TransectNmbTotalNmbEnsembles14/TotalNmbEnsemblesTotalBadEnsembles0/TotalBadEnsemblesTotalLostEnsembles0/TotalLostEnsembles/Index_1Index_2UseInSummary1/UseInSummaryBeginLeft0/BeginLeftIsSubSectioned0/IsSubSectionedFileNameNX20250605002/FileNameTransectNmb002/TransectNmbTotalNmbEnsembles18/TotalNmbEnsemblesTotalBadEnsembles0/TotalBadEnsemblesTotalLostEnsembles0/TotalLostEnsembles/Index_2Index_3UseInSummary1/UseInSummaryBeginLeft1/BeginLeftIsSubSectioned0/IsSubSectionedFileNameNX20250605003/FileNameTransectNmb003/TransectNmbTotalNmbEnsembles12/TotalNmbEnsemblesTotalBadEnsembles0/TotalBadEnsemblesTotalLostEnsembles0/TotalLostEnsembles/Index_3
/NoneXML2、采用以下代码可以序列化和反序列化但无法对应具体动态元素N个索引的XML内容从Index_0 到 Index_N 无法动态序列化和反序列化 public class NoneXML{[XmlAnyElement] public ListXmlElement Index_N_Element { get; set; }}3、采用固定呆板的代码无法序列化和反序列化获得所有动态的Index_0 到 Index_N数据以下代码只能从Index_0 到 Index_4 public class NoneXML{[XmlElement(Index_0)] public IndexN { get; set; } [XmlElement(Index_1)] public IndexN { get; set; } [XmlElement(Index_2)] public IndexN { get; set; } [XmlElement(Index_3)] public IndexN { get; set; } [XmlElement(Index_4)] public IndexN { get; set; } [XmlElement(Index_5)] public IndexN { get; set; }}4、IndexN的子Element public class IndexN{/// summary是否采用汇总/summary[XmlElement(UseInSummary)] public int UseInSummary { get; set; } 1;/// summary是否左岸开始/summary[XmlElement(BeginLeft)] public int BeginLeft { get; set; }/// summary是否已分段/summary[XmlElement(IsSubSectioned)] public int IsSubSectioned { get; set; }/// summary文件名/summary[XmlElement(FileName)] public string FileName { get; set; }/// summary断面数/summary[XmlElement(TransectNmb)] public int TransectNmb { get; set; }/// summary总集合数/summary[XmlElement(TotalNmbEnsembles)] public int TotalNmbEnsembles { get; set; }/// summary不良集合总数/summary[XmlElement(TotalBadEnsembles)] public int TotalBadEnsembles { get; set; }/// summary丢失集合总数/summary[XmlElement(TotalLostEnsembles)] public int TotalLostEnsembles { get; set; } }5、序列化 Console.WriteLine();Console.WriteLine(None对象序列化为XML字符串----------------控制台显示--------------------);string xml;XmlSerializer serializer new XmlSerializer(typeof(NoneXML));XmlSerializerNamespaces ns new XmlSerializerNamespaces();ns.Add(, );//命名空间设为空 using (StringWriter writer new StringWriter()){serializer.Serialize(writer, NoneXML, ns);//, nsxml writer.ToString(); Console.WriteLine(xml);//控制台显示}6、反序列化 Console.WriteLine();Console.WriteLine(XML 字符串反序列化为 NoneXML 对象--------------------------------------);NoneXML newNoneXML;using (StringReader reader new StringReader(xml)){newNoneXML (NoneXML)serializer.Deserialize(reader);} Console.WriteLine(newNoneXML.Index_0.UseInSummary);//要具体获得Index_0 到 Index_N以下的IndexN对象值。