2012-10-22 2 views
1

시간을 저장하기 위해 SQL Server 데이터베이스에 열 (데이터 형식은 time(7))이 있습니다. 데이터베이스에서 해당 값을 검색하고 DateTimePicker (시간 만 표시하도록 설정된 형식)으로 표시하면 InvalidCastException 오류가 발생합니다.DateTimePicker의 데이터베이스에서 시간 표시

이것은 주조가 일어나는 라인입니다.

r = com.ExecuteReader(); 
dtpOutTime.Value = (DateTime)r["OutTime"]; 

왜 오류가 발생했는지 이해할 수 있지만 해결 방법을 찾을 수는 없습니다.

DateTimePicker에 데이터베이스의 시간 만 표시하려면 어떻게해야합니까?

감사합니다.

답변

1

System.Data.DbType.Time의 경우 .NET Framework 유형 System.TimeSpan을 사용합니다. 예를 들어

:

dtpOutTime.Value = DateTime.Today + (TimeSpan)r["OutTime"]; 

(당신이 Today 자정에 시간 범위를 추가 할 및 시간 범위 6 시간 될 경우, 결과는 10/22/2012 6:00:00 AM 될 것이다)

+0

정말 감사합니다, 팀. 그것은 매력처럼 작동합니다. :) – Isuru

관련 문제