Tengo dos calendarios y cada vuelta un DateTime de calendario.SelectedDate.

Cómo hago para restar dos fechas seleccionadas de cada uno de los otros, me da la cantidad de días entre las dos selecciones?

Hay un calendario.Restar() pero se necesita un Lapso de tiempo en lugar de DateTime.

InformationsquelleAutor sd_dracula | 2012-06-03

3 Comentarios

  1. 30

    Sólo tiene que utilizar:

    TimeSpan difference = end - start;
    double days = difference.TotalDays;

    Tenga en cuenta que si usted quiere tratarlos como fechas usted probablemente debería usar

    TimeSpan difference = end.Date - start.Date;
    int days = (int) difference.TotalDays;

    De esa manera no se obtienen resultados diferentes dependiendo de los tiempos.

    (Puede utilizar el Subtract método en lugar de la - operador en caso de que usted quiera, pero personalmente creo que es más claro para usar el operador.)

    • Este es un audaz hombre que corrige SkeetCode(tm). Buen trabajo Bhushan.
  2. 3

    Pensar.

    ¿Cómo expresar una diferencia entre dos fechas? Con otra fecha?

    Es por eso que necesita el Lapso de tiempo

    DateTime dtToday = new System.DateTime(2012, 6, 2, 0, 0, 0);
    DateTime dtMonthBefore = new System.DateTime(2012, 5, 2, 0, 0, 0);
    TimeSpan diffResult = dtToday.Subtract(dtMonthBefore);
    Console.WriteLine(diffResult.TotalDays);
    • En realidad hay varios problemas con el uso de TimeSpan para representar la diferencia entre dos fechas, pero en esto caso está bien 🙂
    • Gracias por todos los aportes. En realidad sólo necesito el día y no vi que la Resta de método también se puede tomar un parámetro DateTime significado todo lo que necesito es esto: untilCalendar.SelectedDate.Restar(fromCalendar.SelectedDate).Días
    • ¿Definitivamente prefiero usar el Subtract método en lugar de la operadora?

Dejar respuesta

Please enter your comment!
Please enter your name here