2011-04-20 36 views
0

如何在C#中實現這樣的格式?在C#中實現XML格式

想這是輸出:

<Region id="1" name="Africa"/> 

到目前爲止,這是我的C#代碼:

using (XmlWriter xml_writer = XmlWriter.Create(str_builder)) 
{ 
    xml_writer.WriteStartDocument(); 
    xml_writer.WriteStartElement("RegionList"); 

    foreach (var get_regions in qdb_conn.Regions()) 
    { 
     xml_writer.WriteStartElement("Region"); 
     xml_writer.WriteEndElement(); 
    } 

    xml_writer.WriteEndElement(); 
    xml_writer.WriteEndDocument(); 
} 

回答

7

,除非你真的使用XmlWriter,我根本不會。我會使用LINQ到XML來代替:

XElement region = new XElement("Region", 
           new XAttribute("id", 1), 
           new XAttribute("name", "Africa")); 

完成任務 - 然後您可以將其寫入任何您想要的內容。話雖如此,應該很容易讓您的現有代碼正常工作。只需將環路更改爲如下形式:

foreach (var get_regions in qdb_conn.Regions()) 
{ 
    xml_writer.WriteStartElement("Region"); 
    xml_writer.WriteAttributeString("id", XmlConvert.ToString(get_regions.Id)); 
    xml_writer.WriteAttributeString("name", get_regions.Name); 
    xml_writer.WriteEndElement(); 
} 
+0

謝謝!生病只是使用XElement。 – Rye 2011-04-20 05:37:30