【问题标题】:Returning SqlDataReader from a WCF Service从 WCF 服务返回 SqlDataReader
【发布时间】:2012-02-01 17:07:57
【问题描述】:

我的方法当前执行一个存储过程,我可以通过 SqlDataReader 访问其结果。我现在可以将其转换为 XML 吗?这是一个 wcf 网络服务。

【问题讨论】:

  • .NET Web 服务的存在是为了将这类事情抽象出来。您从函数返回一组对象。框架会完成其余的工作,其中“其余”包括以 XML 或 JSON 格式返回您的数据,具体取决于消费者的要求。
  • 有趣的名字顺便说一句:)
  • 啊抱歉 GSerg - 我要问一个不同的问题,因为我似乎没有仔细阅读您的原始回复。你会推荐我使用 ADO .net 实体从 SQL 阅读器返回数据吗?以及如何以请求 XML 的方式使用此服务??
  • @the_joric - 我发誓他只是在逗我们
  • IDataReader w/AutoMapper ---> .NET 对象,然后是 .NET 对象 w/WCF 序列化器 --> XML

标签: c# sql xml wcf sqldatareader


【解决方案1】:

如上所述,如果您从 WCF 服务请求数据,它将为您序列化为 XML,通过网络发送,然后您的 WCF 客户端将反序列化 - 这一切都为您完成,无需交互。

如果您只想从数据转到 XML,您可以将 SQL 阅读器加载到 DataSet,然后从该数据集中获取 XML (DataSet.GetXml()) - 虽然可能不是最好/最快的方式,但它又快又脏.对于单个数据表,.net DataTable 也有一个 WriteXml 方法,用于写入文件、流等。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-11-18
    • 1970-01-01
    相关资源
    最近更新 更多