我想发布一个 SQL Server 数据库,用于测试目的AdventureWorksDW
,Microsoft 提供的数据仓库示例数据库。我在 VS 中创建了一个新的“WCF 数据服务”项目,并创建了一个实体框架模型将其传递给DataService
基类的通用参数。我在模型中包含了一些维度和事实表FactInternetSales
。FactInternetSales 表似乎包含太多数据(60398 条记录),默认情况下无法通过 OData 访问。当我尝试从控制台应用程序迭代 FactInternetSales 实体集时,我收到一条System.Net.WebException
消息:
基础连接已关闭:连接意外关闭。
如果我限制要迭代的行数,比如 1000,我没有问题。
另一方面,当我尝试使用此 OData 服务将数据从 FactInternetSales 加载到 PowerPivot 时,我收到以下错误消息:
无法获取数据馈送“FactInternetSales”的架构。请确保此 Feed 存在。
在InitializeService
我设置的OData Service的方法中config.SetEntitySetPageSize("*", 1000000)
,似乎没有任何效果。我还在服务的 web.config 中添加了以下代码,但没有成功:
<system.web>
...
<httpRuntime maxRequestLength="40960" />
</system.web>
...
<system.webServer>
<security>
<requestFiltering allowDoubleEscaping="true">
<requestLimits maxAllowedContentLength="2147483647" />
</requestFiltering>
</security>
</system.webServer>
我想允许这么多数据流通过 OData 服务是一个配置问题,但我找不到应该更改默认行为的好地方。