2009-01-15 12 views
9

¿Cuáles son las configuraciones mínimas del cliente que debo hacer para una configuración optimizada de WCF en el app.config?configuración mínima de WCFconfig del cliente WCF

La opción por defecto es la siguiente:

<bindings> 
     <wsHttpBinding> 
      <binding name="WSHttpBinding_IService" closeTimeout="00:01:00" 
       openTimeout="00:01:00" receiveTimeout="00:10:00" sendTimeout="00:01:00" 
       bypassProxyOnLocal="false" transactionFlow="false" hostNameComparisonMode="StrongWildcard" 
       maxBufferPoolSize="524288" maxReceivedMessageSize="65536" 
       messageEncoding="Text" textEncoding="utf-8" useDefaultWebProxy="true" 
       allowCookies="false"> 
       <readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384" 
        maxBytesPerRead="4096" maxNameTableCharCount="16384" /> 
       <reliableSession ordered="true" inactivityTimeout="00:10:00" 
        enabled="false" /> 
       <security mode="Message"> 
        <transport clientCredentialType="Windows" proxyCredentialType="None" 
         realm="" /> 
        <message clientCredentialType="Windows" negotiateServiceCredential="true" 
         algorithmSuite="Default" establishSecurityContext="true" /> 
       </security> 
      </binding> 
     </wsHttpBinding> 
    </bindings> 

Qué puedo excluir, y cuánto de que necesito?


Editar: ¿Debo comenzar arrancando partes hasta que se rompa? Esperaba encontrar algunos wsHttpBindings optimizados con los que la gente tenga buena suerte.

+0

No está claro a partir de la pregunta si debemos tomar la perspectiva de ser un servidor o un cliente. La configuración mínima puede ser diferente. De cualquier forma, supongo que no se necesita ninguna configuración de enlace de ningún tipo. Tanto un cliente WCF como un servidor * podrían * funcionar muy bien sin ninguna configuración vinculante. La configuración mínima sería el elemento '' o '' dependiendo de si la pregunta está dirigida a un cliente o servidor. –

Respuesta

8

Jerograv tiene razón, dado que estos son todos los valores predeterminados, puede omitirlos a todos. Para probar esta He creado un servicio sencillo y creé la configuración mínima requerida, que es más o menos la dirección, la unión y el contrato-

<?xml version="1.0" encoding="utf-8"?> 
<configuration> 
    <system.serviceModel> 
     <client> 
      <endpoint address="http://sabra2/TestService/Service1.svc" binding="wsHttpBinding" 
       contract="IService1"/> 
     </client> 
    </system.serviceModel> 
</configuration> 
+0

perfecto, gracias! –

+0

Esto se responde desde la perspectiva de un cliente. Por lo tanto, es * cierto * que la configuración mínima es un elemento '', pero el entorno será '' o '' dependiendo de si usted es un cliente o servidor. –

+0

Y también, si este hubiera sido el servidor, no necesitaría ningún valor de 'dirección', podría estar simplemente vacío (si se aloja desde IIS ya que se tomaría la dirección de su enlace IIS). –

4

Creo que encontrará que todo de eso es opcional. Todas esas cosas en ese enlace en particular son las predeterminadas de todos modos.

De hecho, creo que especificar el enlace en absoluto en el punto final sería opcional en este caso.

7

Sólo recuerda el ABC de la WCF. Dirección, Encuadernación, Contrato. ¡Eso es todo lo que necesitas!

Su cliente solo tiene que tener un punto final para hablar con un Servicio WCF. Cada punto final solo necesita describir cada uno de los ABC y listo. Las otras cosas se pueden agregar más tarde.

Esa es una de las razones por las que no soy partidario de agregar referencias de servicio en Visual Studio.

Cuestiones relacionadas