У меня была следующая ошибка при попытке получить доступ к моей службе WCF.WCF MaxItemsInObjectGraph не работает
«Максимальное количество элементов, которые могут быть сериализованы или десериализованы в графе объектов, составляет« 65536 ». Измените график объекта или увеличьте квоту MaxItemsInObjectGraph
Выполнение некоторых исследований, похоже, что все, что мне нужно сделать, - это обновить эту настройку, чтобы она была более высокой. Это то, что я пытаюсь сделать, но настройка, похоже, не считывается из конфигурации. Я продолжаю получать одно и то же исключение с его значением 65536.
Я следовал инструкциям, изложенным в этом Link, но мне не повезло.
Вот что я настроил на Web.Config службы WCF.
<behaviors>
<serviceBehaviors>
<behavior name="metadataBehavior">
<serviceMetadata httpGetEnabled="true" httpGetUrl="" />
<serviceDebug includeExceptionDetailInFaults="false" />
<dataContractSerializer maxItemsInObjectGraph="2147483646"/>
</behavior>
</serviceBehaviors>
</behaviors>
Это то, что находится в app.config Клиента:
<behaviors>
<serviceBehaviors>
<behavior>
<serviceMetadata httpGetEnabled="True" />
<serviceDebug includeExceptionDetailInFaults="False" />
</behavior>
</serviceBehaviors>
<endpointBehaviors>
<behavior >
<dataContractSerializer maxItemsInObjectGraph="2147483646"/>
</behavior>
</endpointBehaviors>
</behaviors>
И, наконец, у меня есть следующий атрибут на самом WCF службы:
[ServiceBehavior(MaxItemsInObjectGraph = 2147483646, IncludeExceptionDetailInFaults = true)]
Несмотря на указанные выше конфигурации , Я все еще получаю исключение, жалующееся на значение 65536. Почему ни один из этих параметров не используется приложениями? Есть что-то еще, что нужно где-то установить?
Спасибо! Сэкономил мне много времени :) –