title: WCF async call return a 10054 error: "An existing connection was forcibly closed by the remote host"
body: <p>I have a WCF consumed by a <strong>Windows Mobile 5.0 or above</strong> application with <strong>.NET Compact Framework 2.0 SP2</strong> and <strong>C#</strong>.</p>
  
  <p>When the application consume a asynchronous "method" it throws that message. This is also the stackTrace of inner exception:</p>
  
  <pre><code>at System.Net.Sockets.Socket.ReceiveNoCheck()
  at System.Net.Sockets.Socket.Receive()
  at System.Net.Connection.Read()
  at System.Net.HttpWebRequest.fillBuffer()
  at System.Net.HttpWebRequest.getLine()
  at System.Net.HttpWebRequest.parseResponse()
  at System.Net.HttpWebRequest.startReceiving()
  at System.Net.Connection.startReceiving()
  at WorkItem.doWork()
  at System.Threading.Timer.ring()
  </code></pre>
  
  <p>The message from the exception is:</p>
  
  <p>"Unable to read data from the transport connection."</p>
  
  <p>And its stackTrace is:</p>
  
  <pre><code>at System.Net.HttpWebRequest.finishGetResponse()
  at System.Net.HttpWebRequest.GetResponse()
  at System.Web.Services.Protocols.WebClientProtocol.GetWebResponse()
  at System.Web.Services.Protocols.HttpWebClientProtocol.GetWebResponse()
  at System.Web.Services.Protocols.SoapHttpClientProtocol.doInvoke()
  at System.Web.Services.Protocols.SoapHttpClientProtocol.doAsyncInvoke()
  at WorkItem.doWork()
  at System.Threading.Timer.ring()
  </code></pre>
  
  <p>What's happening?</p>
  
  <p>If you need more details tell me!</p>
  
  <p><strong>Update</strong>:</p>
  
  <p>I have two computers and on both the same error happens. One of then is a Windows 7 Ultimate 64bit, and the other is a Windows Vista Home Premium 32 bit. Maybe it is something releated to code...</p>
  
  <p>Thank you.</p>