Получение ошибки при использовании WPF CSLA Remote server - PullRequest
0 голосов
/ 08 августа 2009

Я запускаю приложение WPF с настройкой удаленного сервера, но получаю сообщение «Удаленный сервер возвратил неожиданный ответ: (400) неверный запрос».

Это определенно проблема размера запроса, так как я попытался уменьшить размер отправляемых данных, и звонок работал нормально. Из моей конфигурации это выглядит так, как будто я настроил 2 гигабайта, но ведет себя так, будто используется только ограничение по умолчанию (что-то вроде 65000 байт). Я думаю, что с моей конфигурацией что-то не так.

Любая помощь будет оценена!

Mark.

У меня удаленный сервер, настроенный с помощью WCF web.config:

  <system.serviceModel>
<bindings>
  <wsHttpBinding>
    <binding name="wsHttpBindingSettings" closeTimeout="00:10:00" openTimeout="00:10:00" sendTimeout="00:10:00" maxReceivedMessageSize="2147483647" maxBufferPoolSize="2147483647" messageEncoding="Text">
      <readerQuotas maxDepth="2147483647" maxStringContentLength="2147483647" maxArrayLength="2147483647" maxBytesPerRead="2147483647" maxNameTableCharCount="2147483647" />
    </binding>
  </wsHttpBinding>
</bindings>
<services>
  <service name="Csla.Server.Hosts.WcfPortal">
    <endpoint contract="Csla.Server.Hosts.IWcfPortal" binding="wsHttpBinding"/>
  </service>
</services>

И мой app.config на клиенте:

<system.serviceModel>
<bindings>
  <wsHttpBinding>
    <binding name="wsHttpBindingSettings" closeTimeout="00:10:00" openTimeout="00:10:00" sendTimeout="00:10:00" maxReceivedMessageSize="2147483647" maxBufferPoolSize="2147483647" messageEncoding="Text">
      <readerQuotas maxDepth="2147483647" maxStringContentLength="2147483647" maxArrayLength="2147483647" maxBytesPerRead="2147483647" maxNameTableCharCount="2147483647" />
    </binding>
  </wsHttpBinding>
</bindings>
<client>
  <endpoint name="WcfDataPortal" address="http://alcatraz.dev/AlcatrazHost/WcfPortal.svc" binding="wsHttpBinding" contract="Csla.Server.Hosts.IWcfPortal" bindingConfiguration="wsHttpBindingSettings" />
</client>

Ответы [ 2 ]

1 голос
/ 27 августа 2009

Вы должны установить квоты для клиента и сервера, а не только для одного.

0 голосов
/ 08 августа 2009

Может быть, тайм-аут соединения? 2 ГБ - это огромный объем данных, которые нужно отправить через веб-сервис.

Возможно, вы захотите рассмотреть альтернативные способы перемещения данных по сети, такие как общий файловый ресурс, SFTP и т. Д.

...