title: Asynchronous ADO.NET
body: <p>I'm trying to write an asynchronous server that queries a SQL Server database and am concerned that my DB side is too synchronous. Specifically, I can call <code>ExecuteReader</code> asynchronously but cannot then call <code>reader.Item</code> asynchronously and is where 57% of the time is spent (blocking my precious thread!).</p>
  
  <p>Is this the most asynchronous I can do with ADO.NET or is there an asynchronous way to do <code>reader.Item</code> as well?</p>