2012-02-01 104 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写入文件,流等的方法。