Hej!
Många gånger har jag blivit frustrerad över detta som egentligen skall vara så enkelt men jag får det aldrig att fungera. Mina problem rotar sig i att jag ofta behöver lägga till ett visst antal dagar på en DateTime variabel men hur jag än gör så blir det samma datum som det var ursprungligen.
Ta t.ex. förljande kod:
DateTime dt = new DateTime(startDateCalendar.SelectedDate.Year, startDateCalendar.SelectedDate.Month, startDateCalendar.SelectedDate.Day, int.Parse(startHourDrop.SelectedValue), int.Parse(startMinDrop.SelectedValue), 0);
DateTime dt2 = new DateTime(startDateCalendar.SelectedDate.Year, startDateCalendar.SelectedDate.Month, startDateCalendar.SelectedDate.Day, int.Parse(endHourDrop.SelectedValue), int.Parse(endMinDrop.SelectedValue), 0);
if (repeatCheckBox.Checked && weeksTextBox.Text.Length != 0)
{
TimeSpan ts = new TimeSpan(7, 0, 0, 0);
Response.Write("Dagar: " + ts.Days); //Detta skriver ut 7 dagar som är riktigt!
for (int i = 1; i < int.Parse(weeksTextBox.Text); i++)
{
dt.Add(ts);
dt2.Add(ts);
Response.Write("Start: " + dt.ToShortDateString() + ", " + dt.ToShortTimeString() + "; Slut: " + dt2.ToShortDateString() + ", " + dt2.ToShortTimeString());
}
}
Denna kod skriver bara ut samma datum om och om igen, tanken är att datumet skall öka med en vecka för varje loopning.
Har även provat att köra:
dt.AddDays(7);
dt2.AddDays(7);
Men det ger samma bittra resultat.
Någon enkel idé på vad för uppenbart jag missar?