27. september 2006 - 13:05Der er
14 kommentarer og 1 løsning
Fejl på noget dato ?
Hejsa,
Jeg har lavet følgende metode :
Public Function PrintWeekDates(ByVal year As Integer, _ ByVal week As Integer) As ArrayList Dim dt As DateTime = New DateTime(year - 1, 12, 29) Dim objList As New ArrayList While WeekNumber(dt.Year, dt.Month, dt.Day) > 1 dt = dt.AddDays(1) End While While WeekNumber(dt.Year, dt.Month, dt.Day) < week dt = dt.AddDays(1) End While While WeekNumber(dt.Year, dt.Month, dt.Day) = week objList.Add(dt.ToString("dd-MM-yyyy")) dt = dt.AddDays(1) End While Return objList End Function
Den bruger jeg så sådan her :
Dim objArray1 As ArrayList = objFunc.PrintWeekDates(DatePart(DateInterval.Year, NowDate), DatePart(DateInterval.WeekOfYear, NowDate))
Og forsøger at bruge den på denne måde :
DateTime.Parse(objArray1(0)).AddDays(-2)
Men når jeg går dette så får jeg denne fejl :
String was not recognized as a valid DateTime.
For det første så har det virket i en lang periode, men nu gør det ikke er der nogen der kan hjælpe mig med dette ?
Jeg testede lige med 09/27/2006 og så er der ingen problemer, så noget kunne tyde på at det nok er fordi det er dansk datoformat den får fra min PrintWeekDates()
Måske er det serverens standard-opsætning som har ændret sig - f.eks. i forbindelse med en sikkerhedsopdatering.
Din PrintWeekDates() har *altid* givet dansk format. det ligger i denne linje:
objList.Add(dt.ToString("dd-MM-yyyy"))
Problemet er hvis din server på en eller anden måde er skiftet fra dansk til amerikansk format, for så vil DateTime.Parse(...) gå fra at forvente at få datoerne på dansk format til at forvente dem på amerikansk.
Den skal give dansk da den da det skal vises på dansk til brugeren så det er fint nok kan jeg så ikke lave noget kode som tager den danske dato og om skriver den til amerihansk ?
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.