2013-07-03 52 views

回答

1

一種方法是構建一個模擬IDataReader中的數據並簡單地將其序列化爲XML的類。比方說,在數據讀取器中的數據爲Field1, Field2, Field3,類應該是這樣的:

public class Data 
{ 
    public string Field1; 
    public string Field2; 
    public string Field3; 
} 

當然的數據類型可能會有所不同。現在,我們需要做的是將數據讀入類中,可能看起來像這樣:

var list = new List<Data>(); 
while (reader.Read()) 
{ 
    var o = new Data(); 
    o.Field1 = reader["Field1"]; 
    o.Field2 = reader["Field2"]; 
    o.Field3 = reader["Field3"]; 
    list.Add(o); 
} 

var serializer = new XmlSerializer(typeof(List<Data>)); 

using (TextWriter textWriter = new StreamWriter(fileName)) 
{ 
    serializer.Serialize(textWriter, list); 
} 
+0

這是沿着我想要的,但我想輸出它的模式,將是如果我調用FOR XML AUTO,ELEMENTS,XMLSCHEMA('TestXsdSchema'),則由數據庫輸出。 基本上我希望xml文件匹配數據庫的默認模式,這將是動態的。 – indigo0086