2009-03-06 24 views

Respuesta

54

acaba de tomar la parte de la fecha de cada uno a través de la propiedad Date y comparar los dos:

date1.Date.CompareTo(date2.Date) 

O:

If date1.Date < date2.Date Then 
+0

Usted asume correctamente. –

+0

Quitaré el texto sobre eso entonces. Solo para cualquiera que lo siga, el comentario de Konrad tuvo sentido en ese momento :) –

+0

+1, agregó un bit menor a la sintaxis de VB si/entonces. – JaredPar

7

Compara las propiedades DateTime.Date.

7

También es posible usar TimeSpan

Dim ts As TimeSpan 
ts = dt1 - dt2 

ts. Los días ahora tendrán la diferencia de las dos fechas como días completos.

+1

Solo quería agregar que a menudo uso (dt1-dt2) .Días como una dificultad rápida. –

+0

¡Justo lo que estaba buscando! ¡Gracias! – webprogrammer

5

Cambie la fecha txt1 para formatear dd/mm/aaaa usando myDateTime.ToShortDateString() para que ambas fechas tengan el mismo formato. a continuación:

if (DateTime.Compare(date1, date2) > 0) 
// which means ("date1 > date2") 
if (DateTime.Compare(date1, date2) == 0) 
//which means ("date1 == date2"); 
if (DateTime.Compare(date1, date2) < 0) 
//which means ("date1 < date2"); 
+0

gran lógica para el manejo de las comparaciones de fechas, gracias. – htm11h

-3
Dim date1, date2 As Date 
date1 = Date.Parse(dtpStart.Text) 
date2 = Date.Parse(dtpEnd.Text) 
If (DateTime.Compare(date1, date2) > 0) Then ' which means ("date1 > date2") 
    MessageBox.Show("يجب تحديد الفترة للتاريخ بشكل صحيح ", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error, MessageBoxDefaultButton.Button1, MessageBoxOptions.RtlReading) 
    Exit Sub 
End If 
Cuestiones relacionadas