使用 REST WCF 数据服务作为 SQL 报告服务的数据源

Posted

技术标签:

【中文标题】使用 REST WCF 数据服务作为 SQL 报告服务的数据源【英文标题】:Using REST WCF data service as a data source for SQL Reporting services 【发布时间】:2011-01-18 18:20:19 【问题描述】:

任何人都可以指出一个明确的 Microsoft 地图,了解 Reporting Services 将使用 WCF 数据服务(ADO.NET 数据服务,Astoria)作为数据源的去向吗?

那里有零散的信息。有一些关于创建自定义数据提供程序,一些关于某种扩展启用连接到 Azure 存储层(我相信公开为 REST 数据服务)和一些关于连接到最新版本的 sharepoint(同样,Sharepoint 将其数据公开为 REST服务?)。关于 REST 服务的报告似乎没有任何统一的愿景。我对 WCF 数据服务特别感兴趣。我错过了一个门户吗?这两种技术的故事是什么?

一点背景;我们有一个系统,我们通过 WCF(ADO.NET,Astoria)数据服务公开我们的数据。在这一层,我们有各种各样的业务规则来塑造返回的数据。我们想做的是使用 SQL 报告服务来满足我们的报告需求,但将数据服务作为数据源提供给它。我们正在考虑使用 Report Builder 或 BI Studio 来创建报告。

看起来我们必须生成自己的数据模型,这很好。我们必须创建一个自定义数据提供程序 - 然后还创建一个语义查询扩展来将报告查询转换为 REST 调用。报表查询的功能与 WCF 数据服务 REST api 的功能之间存在脱节。

当微软似乎如此努力地推动 WCF 数据服务时,这似乎是一项艰巨的工作。我错过了什么吗?报道中是否存在空白?我们是否领先于 MS 最终会做的事情?

【问题讨论】:

不幸的是,我认为您做对了...如果您想连接到任何类型的基于 REST 的服务,此时您需要编写一个自定义数据提供程序。 【参考方案1】:

如果您的服务返回 XML,如果您可以处理多个限制,那么您可能会很幸运。

s-s-rS 支持将 XML 作为数据源,并支持通过 URL 检索 XML。本文档有更多细节:http://msdn.microsoft.com/en-us/library/aa964129(SQL.90).aspx

请注意,仅支持 HTTP 协议(​​我假设这意味着 https 不支持),并且请求使用 GET 方法。但是,如果指定了参数,则将使用 POST 方法。

我自己没有尝试过(我也不知道有人尝试过)。文档暗示这是可能的,但可能会有眼泪。

【讨论】:

以上是关于使用 REST WCF 数据服务作为 SQL 报告服务的数据源的主要内容,如果未能解决你的问题,请参考以下文章

Angularjs应用程序没有响应Wcf REST服务

在 WCF REST 服务 POST 方法中处理 Json 请求数据

在 wcf rest 服务 C# 中使用 Stream 作为输入时缺少第一个元素

Sql Azure Dac 导入/导出服务是 WCF 或 REST 还是其他?

无法以 GET 类型的方法将字典作为参数传递给 WCF REST 服务

使用 Windows Identity Foundation (STS) 的 WCF-Rest 安全性