Большие наборы данных, опубликованные с OData WCF Data Services и Excel PowerPivot
Я хочу опубликовать базу данных SQL Server, для целей тестирования AdventureWorksDW
, образец базы данных хранилища данных, которое предоставляет Microsoft. Я создал новый проект "Служба данных WCF" в VS и создал Entity Framework Model, чтобы передать его в общий параметр DataService
Базовый класс. Я включил в модель некоторые размеры и таблицу фактов FactInternetSales
, Кажется, что таблица FactInternetSales содержит слишком много данных (60398 записей) для доступа по умолчанию через OData. Когда я пытаюсь повторить набор сущности FactInternetSales из консольного приложения, я получаю System.Net.WebException
с сообщением:
Основное соединение было закрыто: соединение было неожиданно закрыто.
Если я ограничу количество строк для повторения, скажем 1000, у меня нет проблем.
С другой стороны, когда я пытаюсь загрузить данные из FactInternetSales в PowerPivot с помощью этой службы OData, я получаю следующее сообщение об ошибке:
Не удалось получить схему для фида данных "FactInternetSales". Пожалуйста, убедитесь, что этот канал существует.
в InitializeService
метод службы OData я установил 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, но я не могу найти хорошее место, где я должен изменить поведение по умолчанию.