2011-01-07 6 views
1

구성을 통해 WCF 파이프 라인에 사용자 지정 메시지 인코더를 연결하려고합니다. 이전 내 구성 파일이WCF - 사용자 지정 바인딩 구성

<bindings> 
     <customBinding> 
      <binding name="compactBinding"> 
       <compactMessageEncoding> 
          <binaryMessageEncoding/> 
       </compactMessageEncoding> 
       <tcpTransport /> 
      </binding> 
     </customBinding> 
    </bindings> 

그것은 잘 작동 나는 사용자 지정 바인딩 구성 다음에 시도 사용자 지정 인코더에 연결하기 위해

<bindings> 
     <netTcpBinding> 
     <binding name="DefaultNetTcpBinding" 
       maxBufferSize="26214400" 
       maxReceivedMessageSize="26214400" 
       maxBufferPoolSize="26214400" 
       listenBacklog="1000" 
       maxConnections="1000" 
       closeTimeout="00:01:00" 
       openTimeout="00:10:00" 
       receiveTimeout="00:01:30" 
       sendTimeout="00:01:00"> 
      <security mode="None"/> 
      <reliableSession ordered="true" inactivityTimeout="00:01:30" enabled="true"/> 
     </binding> 
     </netTcpBinding> 
</bindings> 

처럼 보였다있는 상자의 밖으로 "NetTcpBinding"을 사용했다. 하지만 난 여전히 maxBufferSize, maxReceivedMessageSize, maxBufferPoolSize 등 같은 내 이전 설정을 원합니다. 그것은 <binding> 요소 아래에 <customBinding> 경우에만 closeTimeout, openTimeout, receiveTimeout, sendTimeout 있습니다.

다른 정보를 전달하는 방법?

덕분에

답변

6

시도는 HttpTransportBindingElement 추가. 나는 그것이 당신을 위해 트릭을 할 것이라고 생각합니다. 다음은 link입니다.

+0

그러나 httptransport를 원하지 않습니다. 이미 tcpTransportBindingElement를 사용하고 있습니다. 속성을 설정할 수 있습니까? – stackoverflowuser

+0

죄송합니다. 예, tcpTransport 요소의 속성도 설정할 수 있습니다. 여기에 대한 링크도 있습니다. http://msdn.microsoft.com/en-us/library/system.servicemodel.channels.tcptransportbindingelement.aspx –

+0

thanks. 그게 효과가! – stackoverflowuser

1
<customBinding> 
     <binding> 
     ... 
     <tcpTransport listenBacklog ="100" maxBufferPoolSize ="524288" maxBufferSize ="2147483647" maxReceivedMessageSize ="2147483647"/> 
     ... 
     </binding> 
</customBinding> 
+2

코드 샘플은 좋지만 설명을 추가하십시오. –

+0

여기에 시간 초과 설정이 없습니다. – LostNomad311