2015-03-16 2 views
0

У меня есть метод WCF, возвращающий пользовательский список объектов и его около 20 тыс. Записей. Все работает нормально на моей локальной машине, но метод live server не может дать никакого ответа. Я использую ниже привязки конфиги:WCF-метод не может генерировать ответ. Есть ли ограничение длины для заголовка ответа?

<bindings> 
     <basicHttpBinding> 
     <binding name="NewBinding0" closeTimeout="00:10:00" openTimeout="00:10:00" 
      sendTimeout="00:10:00" maxBufferPoolSize="2147483647" maxBufferSize="2147483647" 
      maxReceivedMessageSize="2147483647"> 
      <readerQuotas maxDepth="2147483647" maxStringContentLength="2147483647" 
      maxArrayLength="2147483647" maxBytesPerRead="2147483647" maxNameTableCharCount="2147483647" /> 
     </binding> 
     </basicHttpBinding> 
    </bindings> 

Может кто-нибудь помочь мне исправить это?

С наилучшими пожеланиями, Micky

ответ

1

Наконец-то мне удалось исправить это. & Исправлено: добавить ниже настройки в конфигурацию сервера WCF.

<serviceBehaviors> 
     <behavior> 
<dataContractSerializer maxItemsInObjectGraph="2147483647" /> 
</behavior> 
     </serviceBehaviors> 
0

Добавьте следующий раздел в файл приложения конфигурации, а затем убедитесь, что папка он записывает трассировку существует (C: \ Temp \ WCFLogs в приведенном ниже примере). Необходимо создать файл ServerWCFTraces.svclog, который может содержать до 0 байт, пока вы не остановите свою службу или не решите сбросить на диск.

После того, как вы воспроизвели ваш случай отказа, откройте файл журнала на компьютере с Visual Studio на (или скачать просмотрщик отсюда:. SvcTraceViewer from MSDN

Там в некоторые инструкции по использованию инструмента по этой ссылке MSDN, но вы эффективно просматриваете ошибки (выделены красным цветом) на панели действий (слева), а затем на нулевое действие, которое не было выполнено (верхняя правая панель), а в разделе сведений (нижняя правая панель) будет приведено описание внутреннее исключение, которое почти всегда сообщает вам, какой явный предел был нарушен, и какой атрибут/свойство необходимо увеличить для его устранения.

<system.diagnostics> 
    <sources> 
    <source propagateActivity="true" name="System.ServiceModel" switchValue="Information, ActivityTracing"> 
     <listeners> 
      <add name="ServiceModelMessageLoggingListener"> 
       <filter type="" /> 
      </add> 
     </listeners> 
    </source> 
    <source name="System.ServiceModel.MessageLogging" switchValue="Warning,ActivityTracing"> 
     <listeners> 
      <add name="ServiceModelMessageLoggingListener"> 
       <filter type="" /> 
      </add> 
     </listeners> 
    </source> 
    </sources> 
    <sharedListeners> 
    <add initializeData="C:\temp\WCFLogs\ServerWCFTraces.svclog" type="System.Diagnostics.XmlWriterTraceListener, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" name="ServiceModelMessageLoggingListener" traceOutputOptions="Timestamp"> 
     <filter type="" /> 
    </add> 
    </sharedListeners> 
</system.diagnostics> 
+0

Привет, дорогой, спасибо. Я пробовал это, и это дало мне ошибку ниже - «Несоответствие типа привязки к WCF-сервису - text/xml и application/soap + xml» У меня есть настройка ссылок в конфигурациях моего сервера и клиента: http://stackoverflow.com/questions/29050538/ФОС-производства-сервер только-ан-ошибки произошли, в то время как-приемно-заместитель HTTP-respon – Mic