什么是xElement的.net 2.0等价.Parse (string)



我有c#。net 4.0的代码,我需要在。net 2.0框架下的计算机上工作。基本上,它所做的就是从服务器读取数据行。一行看起来像这样:

<REC CNT="5275" TIME="-66520.287" TIME_TICK="0" FPOGX="0.00000" FPOGY="0.00000" FPOGS="0.000" FPOGD="0.000" FPOGID="0"/>
我将这些行添加到使用XElement的XML文档中。解析函数。断开连接后,数据被保存。
XElement xmlDoc = new XElement("Data");
do
    //dataLine is a string obtained each iteration by reading from a network stream
    XElement xmlDataLine = XElement.Parse(dataLine);
    xmlDoc.Add(xmlDataLine)
while (!stopClient)
xmlDoc.Save(fileName)

我如何在。net 2.0中做到这一点?

最好使用XmlDocument;

XmlDocument doc = new XmlDocument();
XmlElement root = (XmlElement)doc.AppendChild(doc.CreateElement("Data"));
do {
    string dataLine = ...;
    using(XmlReader reader = XmlReader.Create(
        new StringReader(dataLine)))
    {
        root.AppendChild(doc.ReadNode(reader));
    }
} while (!stopClient);
doc.Save(target);

您可以使用XmlDocument.LoadXml,但是您需要将根元素导入到目标文档中:

XmlDocument doc = new XmlDocument();
doc.LoadXml(xmlDataLine);
XmlNode imported = xmlDoc.ImportNode(doc.DocumentElement, true);
xmlDoc.DocumentElement.AppendChild(imported);

最新更新