title: Losing DateTimeOffset precision when using C#
body: <p>I have a SQL Server table with a CreatedDate field of type DateTimeOffset(2).<br>
  A sample value which is in the table is 2010-03-01 15:18:58.57 -05:00  </p>
  
  <p>As an example, from within C# I retrieve this value like so:  </p>
  
  <pre><code>var cmd = new SqlCommand("SELECT CreatedDate FROM Entities WHERE EntityID = 2", cn);  
  var da = new SqlDataAdapter(cmd);  
  DataTable dt =new DataTable();  
  da.Fill(dt);
  </code></pre>
  
  <p>And I look at the value:<br>
  MessageBox.Show(dt.Rows[0][0].ToString());  </p>
  
  <p>The result is 2010-03-01 15:18:58 -05:00, which is missing the .57 that is stored in the database.  </p>
  
  <p>If I look at dt.Rows[0][0] in the Watch window, I also do not see the .57, so it appears it has been truncated.  </p>
  
  <p>Can someone shed some light on this?  I need to use the date to match up with other records in the database and the .57 is needed.  </p>
  
  <p>Thanks!<br>
  Darvis</p>