2013-02-12 4 views
0

나는 DeliveryDate을 얻으려고하고 있지만 레코드의 일부에 DeliveryDate이 없으므로 VB에서이를 00:00:00으로 간주합니다.날짜를 확인하는 방법 00:00:00

날짜를 확인하고 00:00:00인지 확인하려면 어떻게해야합니까? IF 날짜가 아무것도 (00:00:00) 일 때 변수를 TRUE으로 설정하려고합니다. 당신의 날짜가 날짜 부분을 동일한 경우

+2

당신은 의미하는 경우 * 시간 * 날짜 부분이 0 : 0 : 0? – vcsjones

+1

너무 늦었습니다. 이것은 GIGO의 사례입니다. 쓰레기통, 쓰레기통. 실제로 자정에 배달해야하는 레코드와의 차이점을 알릴 방법이 없습니다. 만약 당신이 그것을 무시하고 싶다면 DateTime.TimeOfDay() –

+0

을 사용할 수 있습니다. 해결책을 찾았습니다. 지금 게시 할 것입니다. – kfirba

답변

1

확인해 볼 수 있습니다 : 당신이 날짜가있는 경우는 Date.MinValue 기본값 것, Nothing에 할당 된 경우 확인하려면 같은

If DeliveryDate.Date = DeliveryDate Then ...

2

보인다. 빠른 더러운 방법은 확인하는 것입니다 : 당신이 1 년 BC에서 배달을 위해 예약 된 패키지를 가질 가능성이 있기 때문에

If DeliveryDate = Date.MinValue Then 

그것은, 자정에 전달 패키지 잘 작동합니다.

적절한 접근 방식은 Nullable(Of Date) 유형의 DeliveryDate을 가지므로 실제로는 Convert.DBNull (= Nothing)을 저장할 수 있습니다.

If DeliveryDate Is Nothing Then 

참고하면 이 시작 유사한 라인을 사용했을 수있는 (유형 DateDeliveryDate 존재와 함께) :이 경우, 코드를 읽기 쉽게된다

If DeliveryDate = Nothing Then 

그러나, 에서 Date.MinValue으로 암시 적 변환을 피할 것인데, 이것은 Is Nothing처럼 읽을 수있는 것으로 보일지라도이 경우 뒤에서 일어날 것입니다.

0

나는 개인적으로 New Date을 사용하지만 스타일 선택입니다. 아무 것도 사용할 수 없습니다.

If DeliveryDate = New Date Then 

또는

If DeliveryDate = Nothing Then 
관련 문제