Im Добавление некоторых узлов в существующий XML, находящийся в изолированном хранилище.Добавить узел в существующий XML в изолированном хранилище
using (Stream stream = myIsolatedStorage.OpenFile("History.xml", FileMode.Open, FileAccess.ReadWrite))
{
XDocument loadedData = XDocument.Load(stream);
var RootNode = new XElement("History");
var RecipentN = new XElement("RecipentName", "ABC");
var RecipentNo = new XElement("RecipentNumber", "ABABAB");
var Time = new XElement("TimeStamp", "Monday");
var MessageBody = new XElement("Message", "23");
RootNode.Add(RecipentN, RecipentNo, Time, MessageBody);
loadedData.Root.Add(RootNode);
loadedData.Save(stream);
}
}
Я хочу, чтобы мой XML будет выглядеть следующим образом
<?xml version="1.0" encoding="utf-8"?>
<History>
<RecipentName>Arslan</RecipentName>
<RecipentNumber>03336329631</RecipentNumber>
<TimeStamp>123456</TimeStamp>
<Message>ABC</Message>
</History
<History>
<RecipentName>Arslanaa</RecipentName>
<RecipentNumber>03336329631</RecipentNumber>
<TimeStamp>123456</TimeStamp>
<Message>ABC</Message>
</History
Но мой код Слияние в существующие XML неправильно
<?xml version="1.0" encoding="utf-8"?>
<History>
<RecipentName>Arslan</RecipentName>
<RecipentNumber>03336329631</RecipentNumber>
<TimeStamp>123456</TimeStamp>
<Message>ABC</Message>
<History>
<RecipentName>Java</RecipentName>
<RecipentNumber>John</RecipentNumber>
<TimeStamp>23</TimeStamp>
<Message>23</Message>
</History>
</History>
Может кто-нибудь, пожалуйста, помогите мне Как я могу узел к существующей XML Какие находится в Isolatedstorage.
У меня нет Issue Чтобы добавить главный корневой узел Как и Histories Но как я могу писать с XMLTextWritter Mean Как Добавлю Истории корневого узла с Writer
writer.WriteStartElement("History", "");
writer.WriteStartElement("RecipentName", "");
writer.WriteString("Arslan");
writer.WriteEndElement();
writer.WriteStartElement("RecipentNumber", "");
writer.WriteString("03336329631");
writer.WriteEndElement();
writer.WriteStartElement("TimeStamp", "");
writer.WriteString("123456");
writer.WriteEndElement();
writer.WriteStartElement("Message", "");
writer.WriteString("ABC");
writer.WriteEndElement();
// Ends the document
writer.WriteEndDocument();
writer.flush();
Является Там Любой другой способ сделать это ?? –
Я уверен, что есть много других способов. Но способ, которым вы хотите (наличие двух узлов 'History' на верхнем уровне), является недопустимым XML. Если вы хотите иметь недопустимый XML, вы можете просто написать в конец потока файлов, но я думаю, что это плохая идея класса. – yamen