나는이 소스에서 날짜 속성을 얻는 방법 (중 하나 DataRow
또는 SqlDataReader
) :는 부정확
protected SqlDateTime GetSqlDateTimePropertyValue(string propertyName, object source)
{
var objValue = GetPropertyValue(propertyName, source);
var value = objValue == DBNull.Value ? null : (DateTime?)objValue;
var sqlValue = new SqlDateTime();
if (value.HasValue) sqlValue = value.Value;
return sqlValue;
}
하지만 전환 수 있도록 약간의 날짜를 변경하는 것으로 나타납니다 내 검사는 항상 실패합니다.
누구나이 방법이 잘못 변환되는 이유를 알고 있습니까? SQL 서버 DATETIME
는 3.33ms의 정확도를 가지고 - -의 .NET 데이터 형식 그러나 단일 나타낼 수
value.Value.Ticks: 634698391707468296
sqlValue.Value.Ticks: 634698391707470000
참조 : http://stackoverflow.com/questions/7824766/how-does-sqldatetime-do-its-precision-reduction –