WebGet operations July 7, 2008
Posted by npaez in .NET.Tags: dotnet, wcf
add a comment
En ocasiones puede que tengamos un servicio WCF con operaciones del tipo webget (sobre webHttpBinding), pero que a pesar de ser de tipo GET, las mismas no devuelvan ningun dato (void). En estos casos, por default WCF nos devolverá un objeto JSON vacio. Para evitar dicho objeto y especificar que la operación no devuelva nada podemos utilizar la siguiente línea de código:
WebOperationContext.Current.OutgoingResponse.SupprressEntityBody = true;
Espero les resulte útil.
Interoperabilidad .asmx cliente wcf May 19, 2008
Posted by npaez in .NET.Tags: wcf
add a comment
Recientemente nos encontramos en la necesidad de invocar un servicio .asmx securizado con autenticación windows (en IIS) desde un cliente wcf fuera del dominio.
Para resolver esto utilizamos un endpoint con binding basicHttp y la siguiente configuración:
<binding name=”CentralWebServiceChSoap” closeTimeout=”00:01:00″
openTimeout=”00:01:00″ receiveTimeout=”00:10:00″ sendTimeout=”00:01:00″
allowCookies=”false” bypassProxyOnLocal=”false” hostNameComparisonMode=”StrongWildcard”
maxBufferSize=”65536″ maxBufferPoolSize=”524288″ maxReceivedMessageSize=”65536″
messageEncoding=”Text” textEncoding=”utf-8″ transferMode=”Buffered”
useDefaultWebProxy=”true”>
<readerQuotas maxDepth=”32″ maxStringContentLength=”8192″ maxArrayLength=”16384″
maxBytesPerRead=”4096″ maxNameTableCharCount=”16384″ />
<security mode=”TransportCredentialOnly”>
<transport clientCredentialType=”Ntlm”/>
</security>
</binding>
Por otro lado al utilizar el proxy wcf es necesario setearle las credenciales de la siguiente forma:
proxy.ClientCredentials.Windows.ClientCredential.Domain = “xxx.com”;
proxy.ClientCredentials.Windows.ClientCredential.UserName= “useryyyy”;
proxy.ClientCredentials.Windows.ClientCredential.Password= “zzzzz”;
proxy.ClientCredentials.Windows.AllowNtlm = true;
Espero que les resulte útil.