Hier ist mein Code, um meinen XML-Code zu schreiben. für diesen XML-Code, um das spezifische Format für meine xmlFüllen von Datagridview mit Daten aus XML-Datei. Bearbeiten und speichern zurück in XML C#
using (XmlWriter xmlWriter = XmlWriter.Create(path, xmlWriterSettings))
{
xmlWriter.WriteStartElement("Address");
xmlWriter.WriteStartElement("Work");
foreach (DataRow dataRow in dt.Rows)
{
xmlWriter.WriteStartElement("MD");
foreach (DataColumn dataColumn in dt.Columns)
{
xmlWriter.WriteElementString(dataColumn.ColumnName, dataRow[dataColumn].ToString());
}
xmlWriter.WriteEndElement();
}
xmlWriter.WriteEndElement();//</Work>
xmlWriter.WriteStartElement("Persons");
foreach (DataRow dataRow in dt2.Rows)
{
xmlWriter.WriteStartElement("Person");
foreach (DataColumn dataColumn in dt2.Columns)
{
xmlWriter.WriteElementString(dataColumn.ColumnName, dataRow[dataColumn].ToString());
}
xmlWriter.WriteEndElement();//</Person>
}
xmlWriter.WriteEndElement();//</Persons>
xmlWriter.WriteEndElement();//</Address>
}
XML-Datei Ich bin die Kombination von zwei Tisch zu bekommen:
<Address>
<Work>
<Location>
<Location_ID>1</Location_ID>
<Location_NAME>Virginia</Location_NAME>
</Location>
</Work>
<Persons>
<Person>
<Person_ID>1</Person_ID>
<Person_Name>MARA</Person_Name>
<Location_ID>1</Location_ID>
<IsRequired>0</IsRequired>
</Person>
<Person>
<Person_ID>2</Person_ID>
<Person_Name>Tanner</Person_Name>
<Location_ID>1</Location_ID>
<IsRequired>0</IsRequired>
</Person>
<Person>
<Person_ID>3</Person_ID>
<Person_Name>Carlo</Person_Name>
<Location_ID>1</Location_ID>
<IsRequired>0</IsRequired>
</Person>
<Person>
<Person_ID>4</Person_ID>
<Person_Name>Casey</Person_Name>
<Location_ID>1</Location_ID>
<IsRequired>0</IsRequired>
</Person>
</Person>
<Address>
mein Problem ist, ich die person_id eine Zählung der Personen, die auf immer sein will die Datei. zum Beispiel, wenn ich Daten von Tanner in der obigen XML-Datei lösche. die XML sollte
<Address>
<Work>
<Location>
<Location_ID>1</Location_ID>
<Location_NAME>Virginia</Location_NAME>
</Location>
</Work>
<Persons>
<Person>
<Person_ID>1</Person_ID>
<Person_Name>MARA</Person_Name>
<Location_ID>1</Location_ID>
<IsRequired>0</IsRequired>
</Person>
<Person>
<Person_ID>2</Person_ID>
<Person_Name>Carlo</Person_Name>
<Location_ID>1</Location_ID>
<IsRequired>0</IsRequired>
</Person>
<Person>
<Person_ID>3</Person_ID>
<Person_Name>Casey</Person_Name>
<Location_ID>1</Location_ID>
<IsRequired>0</IsRequired>
</Person>
</Person>
<Address>
Sie alles bisher versucht haben? Wenn ja, geben Sie den Code an. Wenn nicht, probieren Sie es aus und lassen Sie uns von den Problemen wissen. – Nitin