0

List of Customers をシリアル化して作成した xml ドキュメントに要素を追加する方法を探しています。

お客様 :

public class Customer
{
    [XmlElement("CustomerId")]
    public Guid CustomerId { get; set; }

    [XmlElement("FirstName")]
    public string FirstName { get; set; }

    [XmlElement("LastName")]
    public string LastName { get; set; }

    [XmlElement("DOB")]
    public DateTime DOB { get; set; }
}

CUSTOMERS のリスト (xml の作成時は空)

private void CreateXml(string path)
{
        File.Create(path).Close();
        List<Customer> customers = new List<Customer>();
        XmlSerializer serializer = new XmlSerializer(typeof(List<Customer>));
        TextWriter textWriter = new StreamWriter(path);
        serializer.Serialize(textWriter, customers);
        textWriter.Close();
}

DOM スタイル コードの割り当てを記述せずに、新しい Customer 要素を xml ファイルに追加するにはどうすればよいですか?

編集 :

私は回避策を見つけました:

私は顧客を顧客リストに入れ、リスト全体をxmlドキュメントに再シリアル化しました

public void AddCustomer(Customer customer)
{
    TextWriter textWriter = new StreamWriter(XMLRepository.CustomersPath);
    customers.Add(customer);
    serializer.Serialize(textWriter, customers);
    textWriter.Close();
}  

これは良いアプローチですか、誰もがより良い方法を考えることができますか? (私はイエスだと思います) ..

4

0 に答える 0