11. februar 2009 - 12:26Der er
9 kommentarer og 1 løsning
problem med datetime
Hej Eksperter,
Jeg har en is sætning hvor jeg ønsker at tjekke om det nuværende tidspunkt befinder sig mellem et start tidspunkt og et slut tidspunkt. Mine DateTime's har alle formatet (dd/mm/yyyy hh:MM:ss) Er der nogle der kan se hvorfor dette ikke virker, og hvordan det skal se ud, på forhånd tak
DateTime dateNow = DateTime.Now; DateTime start = DateTime.Parse(reader["start_date"].ToString()); DateTime end = DateTime.Parse(reader["start_end"].ToString()); if (start < dateNow < end) {}else{}
jeg får denne fejl :
Operator '<' cannot be applied to operands of type 'bool' and 'System.DateTime
men hvis man ikke kan bruge '<' hvordan gør man det så !!
det er din if den er galt med - din første request, altså "start < dateNow", returnerer en boolean og den første du så at sammenligne med en datetime i med din "< end".
Uden at vide præcis hvad du vil kunne et forslag være følgende;
Du skulle måske overveje at bruge TryParse istedet for Parse, når du ikke try catcher..
For hvis værdien du henter fra databasen ikke kan laves til en datetime, så får du en kedelig fejl.
Og jeg går ud fra det er en string du henter fra databasen? Hvis ja, så kan man da ikke caste direkte, som arne_v skriver? Hvis nej, så er det jo som arne_v siger unødvendigt at lave datetimen om til en datetime..
I mange tilfælde vil man ikke kunne bruge den til andet end at smide en exception.
Synes godt om
Ny brugerNybegynder
Din løsning...
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.