2009-06-03 127 views
2

我有一個包含數據庫設置的XML文件,這些數據庫設置可能會根據讀取的位置而更改。最好,我會從一些配置文件中讀取這些設置。如何才能做到這一點?將配置文件設置爲XML文件

回答

1

可以使用System.Xml.Serialization.XmlSerializer類自動拉入設置一個自定義類。

你的設置創建一個類:

public class Settings 
{ 
    private string connectionString; 

    public string ConnectionString 
    { 
     get { return connectionString; } 
     set { connectionString = value; } 
    } 
} 

然後使用以下方法來拾取數據:

Settings settings = new Settings(); 
FileStream filestream = new FileStream("settings.xml", FileMode.Open); 
System.Xml.Serialization.XmlSerializer cereals = new System.Xml.Serialization.XmlSerializer(typeof(Settings)); 
settings = cereals.Deserialize(filestream); 

同樣的,如果你想分配當前對象的設置文件,這樣做:

XmlSerializer cereals = new XmlSerializer(typeof(Settings)); 
System.IO.FileStream writer = new FileStream("settings.xml", FileMode.Create); 
cereals.Serialize(writer, settings); 

在這種情況下,「settings.xml」文件在當前目錄中,但我通常p請將其放在用戶的應用數據文件夾中,因爲您可以隨時寫入該文件夾。

+0

使用XMLSerializer要記住的一件事是它無法序列化Dictionary <>對象。但是,您可以通過實現IXmlSerializable接口來編寫自己的XMLSerialization方法。 – Navaar 2009-06-03 14:16:51