Frage

I umgewandelt vor kurzem einige Silverlight 3 WCF-Dienste die neuen binären http Bindungen zu verwenden. Lange Strings werden oft an den Server für die Deserialisierung in diesen Diensten geschickt und ich vorher die Daten, um sicherzustellen, könnten richtig gelesen werden. Doch mit der neuen Bindung kann ich nicht den richtigen Ort findet das Element hinzuzufügen:

      <customBinding>
        <binding name="binaryHttpBinding">
          <binaryMessageEncoding maxReadPoolSize="2147483647" maxSessionSize="2147483647" maxWritePoolSize="2147483647"/>
          <httpTransport maxBufferPoolSize="2147483647" maxBufferSize="2147483647" maxReceivedMessageSize="2147483647"/>
        </binding>
      </customBinding>

Hier ein Versuch:

      <customBinding>
        <binding name="binaryHttpBinding">
          <binaryMessageEncoding maxReadPoolSize="2147483647" maxSessionSize="2147483647" maxWritePoolSize="2147483647"/>
          <httpTransport maxBufferPoolSize="2147483647" maxBufferSize="2147483647" maxReceivedMessageSize="2147483647"/>
          <textMessageEncoding>
            <readerQuotas maxDepth="32" maxStringContentLength="5242880"
            maxArrayLength="200000" maxBytesPerRead="4096" maxNameTableCharCount="16384" />
          </textMessageEncoding>
        </binding>
      </customBinding>

Die anderen Probleme verursacht - es scheint nicht, wie eine gute Idee, eine binäre Codierung zu haben und eine textMessageEncoding in der gleichen Bindung. So verwenden nur die binäre Codierung, wie kann ich die Leser Quoten erhöhen Deserialisierung große Strings erlauben?

War es hilfreich?

Lösung

Hier ist die Lösung, die ich gefunden:

      <customBinding>
        <binding name="binaryHttpBinding">
          <binaryMessageEncoding maxReadPoolSize="2147483647" maxSessionSize="2147483647" maxWritePoolSize="2147483647">
            <readerQuotas maxDepth="32" maxStringContentLength="5242880"
            maxArrayLength="200000" maxBytesPerRead="4096" maxNameTableCharCount="16384" />
          </binaryMessageEncoding>
          <httpTransport maxBufferPoolSize="2147483647" maxBufferSize="2147483647" maxReceivedMessageSize="2147483647"/>
        </binding>
      </customBinding>
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top