Ich brauche eine Hilfe, um den sechsmonatigen Bereich vom aktuellen Datum zu erhalten. Zum Beispiel, wenn das aktuelle Datum 02-Feb-2016
ist, dann möchte ich Startdatum 01-Sep-2015
und ein Enddatum 29-Feb-2016
.Wie erhalte ich einen genauen Zeitraum von 6 Monaten?
ich den Code versucht:
DateTime date = new DateTime(2016,02,06);
DateTime endDate = new DateTime(date.Year, date.Month, 1).AddMonths(1).AddDays(-1);
DateTime startDate = endDate.AddMonths(-6);
und Ausgangs ist:
Startdate: 29-Aug-2015 endDate: 29-Feb-2016
Aber ich möchte die folgende Ausgabe:
Startdate: 01-Sep-2015 endDate: 29-Feb-2016
Update:
Ich habe die Frage mit einem Exempel aktualisiert Das habe ich ausprobiert und ausgegeben.
juharrs Kommentar ist die Arbeit für mich.
Warum in aller Welt würde 'DateTime.AddMonths()' _subtract_ days, es sei denn, Sie gaben ihm einen negativen Wert? Zeigen Sie uns bitte Ihren Code und die Ausgabe, die Sie erhalten. –
Keines dieser Daten in dem von Ihnen erwarteten Bereich scheint etwas mit dem aktuellen Datum zu tun zu haben, wie Sie es nennen. Kannst du erklären, was du wirklich willst? Meinst du aktuellen Monat statt Datum? – itsme86
Die 6-Monats-Regel ist nicht klar. Meinst du die 6 Monate enden am Ende des aktuellen Monats, oder hast du eine bestimmte 6-Monats-Frist definiert (immer September-Feb-Sept)? – Rhumborl