Я получаю следующую ошибку, пытающуюся получить доступ к моей службе WCF.
'Максимальное количество элементов, которые могут быть сериализованы или десериализованы в графе объектов, - "65536". Измените граф объекта или увеличьте квоту MaxItemsInObjectGraph
Выполняя некоторые исследования, похоже, что все, что мне нужно сделать, это обновить этот параметр, чтобы быть более высоким значением. Это то, что я пытаюсь сделать, но настройка, похоже, не считывается из конфигурации. Я продолжаю получать одно и то же исключение с его значением 65536.
Я выполнил инструкции, найденные в этой Link, но мне не повезло.
Вот что я настроил в службе WCF Web.Config.
<behaviors>
<serviceBehaviors>
<behavior name="metadataBehavior">
<serviceMetadata httpGetEnabled="true" httpGetUrl="" />
<serviceDebug includeExceptionDetailInFaults="false" />
<dataContractSerializer maxItemsInObjectGraph="2147483646"/>
</behavior>
</serviceBehaviors>
</behaviors>
Это то, что находится в Client 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. Почему ни один из этих параметров не используется приложениями? Есть что-то еще, что нужно где-то установить?