01. september 2006 - 10:53Der er
18 kommentarer og 1 løsning
læg to DateTime sammen i c#
Hej jeg har et lille problem med at lægge to datoer sammen, hvordan gør man det i c#. jeg har ingen problemer med at trække dem fra hinanden, der gør jeg sådan her:
det er noget af det jeg skal bruge.. Hvis du har en tid der starter på 00:00:00 hvordan tilføjer du så fx 30 min til den så den kommer til at stå på 00:30:00
Derefter på et senere tidspunkt tilføjer du så fx 50 min til så den så kommer til at stå på 01:20:00. det kan jeg ikke få den til jeg har forsøgt med:
for det denne linie gør: TimeSpan ts2 = DateTime.Now.TimeOfDay.Add(new TimeSpan(3,0,0)); er at tage tiden fra nu og læg 3 timer til.. jeg skal have en tid som starter på 00:00:00, hvor jeg kan lægge 3 timer til, så den kommer til at stå på 03:00:00 og senere, lægge lyderligere tid til fx 30 min, så der kommer til at stå 03:30:00
Jeg bruger normalt også ToString(), men jeg har haft noget tekst til at stå mellem "", som jeg sidenhen har slettet igen men, og for at blive fri for at skifte mellem ToString() og "", så har jeg bare beholdt dem indtil metoden bliver helt færdig
"" + ts; giver "" + ts.ToString(); ts + ""; giver ts.ToString() + "";
Da den jo er sød nok til selv at gøre det så snart man concatisere... Så det giver faktisk den funktion i hans tilfædle at:
lblTimeUsed.Text = ts; giver formentlig en assign relateret, eller implicit convert relateret exception...
Mens når han bruge Concat, så gør den ikke...
Så kan man som det næste begynde at diskutere hvor vidt man syntes det er en pæn måde at gøre det på... jeg syntes ikke det er... foretrækker en af følgende
ToString, Format eller StringBuilder alt efter hvad "opgaven" er...
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.