Monday, April 11, 2011

WCF (Windows Comunication foundation)

WCF Transaction example:

http://www.codeproject.com/KB/WCF/WCFTransactions.aspx    (6 steps article)

http://www.dotnetfunda.com/interview/exclusive/x776-can-we-see-simple-wcf-example-of-transactions-using-sql-server-database-.aspx

http://www.codeasis.com/ShowArticle.aspx?ID=146#Which%20protocol%20is%20used%20to%20handle%20transactions%20in%20WCF

http://msdn.microsoft.com/en-us/magazine/cc163432.aspx

http://www.codeproject.com/KB/WCF/NETTx.aspx

Transaction Flow in WCF

http://blogs.msdn.com/b/thelever/archive/2007/02/27/transaction-flow-in-wcf.aspx

Configuration of Transactions for use in WCF

http://blogs.msdn.com/b/thelever/archive/2007/03/29/configuration-of-transactions-of-use-in-wcf.aspx


Session and timeout in WCF Transactions

http://www.wrox.com/WileyCDA/Section/Transactions-in-WCF-and-NET.id-305253.html

http://bveldhoen.wordpress.com/2011/02/15/generic-message-contract-and-transaction-flow-in-wcf/

Debugging TRansaction in WCF
http://dotnet.dzone.com/news/debugging-distributed

WCF Errors
-------------------------

Cannot open database "DashBoard" requested by the login. The login failed.
Login failed for user 'TECH-VENUGOPAL\ASPNET'.
The Above Error will Ocuur if we Write a connection string With Windows Authentication


<add name="constring" connectionString=" Initial Catalog=DashBoard;Data Source=TECH-VENUGOPAL\SQLEXPRESS;Integrated Security=true;"></add>
</connectionStrings>
===================================
Then Change the Connection string to Like the Below One ...then It Will Work...
Use  SQl Server Authentication 
User Id=sa;
Password=xxx;
Persist Security Info=False;


 <configuration>
<connectionStrings>
<add name="constring" connectionString="Persist Security Info=False;User ID=sa; Password=sa; Initial Catalog=DashBoard;Data Source=TECH-VENUGOPAL\SQLEXPRESS;"></add>
</connectionStrings>
<configuration>
Note: In the Above Connection String Dont Write "Integrated Security=true;" property in Connection String..


Reference:
http://social.msdn.microsoft.com/Forums/en-AU/adodotnetdataproviders/thread/26fd5295-e9e2-44e7-9a3d-6af69da77093




Error
=============

The maximum message size quota for incoming messages (65536) has been exceeded. To increase the quota, use the MaxReceivedMessageSize property on the appropriate binding element.

Cause:When we Create a WCF Service ,
in the Binding Property of Service  maxBufferSize="65536",maxReceivedMessageSize="65536" are default Values 
and 
Solution: Change these values to maxBufferSize="5000000",maxReceivedMessageSize="5000000" and run ..it Execute with out Error

<system.serviceModel>
<bindings>
<basicHttpBinding>
<binding name="BasicHttpBinding_IDashBoardService" 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="None">
<transport clientCredentialType="None" proxyCredentialType="None"
realm="" />
<message clientCredentialType="UserName" algorithmSuite="Default" />
</security>
</binding>
</basicHttpBinding>
</bindings>


<client>
<endpoint address="http://localhost:1557/WebParts/DashBoardService.svc"
binding="basicHttpBinding" bindingConfiguration="BasicHttpBinding_IDashBoardService"
contract="ServiceReference_WP.IDashBoardService" name="BasicHttpBinding_IDashBoardService" />
</client>

<behaviors>
<serviceBehaviors>
<behavior name="">
<serviceMetadata httpGetEnabled="true" />
<serviceDebug includeExceptionDetailInFaults="false" />
</behavior>
</serviceBehaviors>
</behaviors>
<serviceHostingEnvironment multipleSiteBindingsEnabled="true" />
</system.serviceModel>


Solution:



No comments: