2012-02-01 103 views
1

我的方法當前正在執行一個存儲過程,其結果可以通過SqlDataReader訪問。現在可以將它轉換爲XML嗎?這是一個wcf網絡服務。從WCF服務中返回SqlDataReader

+3

存在.NET Web服務來抽象出這類事情。你從你的函數返回一組對象。框架完成剩下的工作,其餘的「剩餘部分」包括以XML或JSON形式返回您的數據,具體取決於消費者要求的內容。 – GSerg 2012-02-01 17:12:14

+7

有趣的名字btw :) – 2012-02-01 17:17:34

+0

啊對不起GSerg - 我會問一個不同的問題,因爲我似乎沒有仔細閱讀你的原始答覆。你會推薦我使用ADO .net實體從SQL讀取器返回數據嗎?如何以一種會請求XML的方式來使用此服務? – SkonJeet 2012-02-01 17:29:05

回答

1

如上所述,如果您要求WCF服務中的數據,它將爲您序列化爲XML,通過電話發送&您的WCF客戶端將反序列化 - 這一切都爲您完成,無需交互。

如果您只是想從數據轉換到XML,您可以將SQL讀取器加載到DataSet中,然後從該數據集中獲取XML(DataSet.GetXml()) - 雖然可能不是最好/最快的方式,但它很快速且很髒。對於單個數據表,.net DataTable也有一個WriteXml寫入文件,流等的方法。