Avatar billede mc_goblen Praktikant
14. december 2004 - 13:25 Der er 15 kommentarer og
1 løsning

DateTime via constructor

//Start tidspunkt for program
private DateTime _StartTidspunkt;

//Get og Set Metode
public DateTime StartTidspunkt
{
get{return _StartTidspunkt;}
set{_StartTidspunkt = value;}
}

//Constructor
public TvProgram(DateTime StartTids)
{
this.StartTidspunkt = StartTids;
}

//Oprettelse af objekt
TvProgram P1 = new TvProgram(??????);


Jeg ved ikke helt hvordan man indsender problemer omkring programmering, men jeg håber følgende kan give mening?

Mit problem er at jeg skal ha' overført en dato til mit objekt P1. Men hvis jeg f.eks. angiver 2004, 12, 13 tror den jo at jeg vil overføre 3 argumenter til min constructor! - Hvordan løses dette?

Jeg kan selvfølgelig overføre det hele som en streng, men hvor skal jeg så konvertere det efterfølgende? I min Set-egenskab eller i min constructor?
Avatar billede wisen Nybegynder
14. december 2004 - 13:32 #1
prøv med TvProgram P1 = new TvProgram( new DateTime(2004,12,13) );
Avatar billede the_party_dog Nybegynder
14. december 2004 - 13:48 #2
TvProgram P1 = new TvProgram( Convert.ToDateTime("2004-12-13"))
Avatar billede mc_goblen Praktikant
14. december 2004 - 13:50 #3
Mange tak, det virkede :)

Lige et lille ekstra spørgsmål -

Jeg kunne også godt tænke mig at få et klokkeslæt med, men det skal kun være timer og minutter, ikke sekunder.

Men problemet er at skriver jeg:

TvProgram P1 = new TvProgram( new DateTime(2004,12,13, 13,48) );

Så brokker den sig, (No overload for method 'DateTime' takes '5' arguments) da den vil ha' at man angiver sekunder. - kan man komme rundt om dette på nogen måde?
Avatar billede the_party_dog Nybegynder
14. december 2004 - 13:51 #4
Convert.ToDateTime("2004-12-13 13:48")

Den burde kunne gøre det for dig
Avatar billede the_party_dog Nybegynder
14. december 2004 - 13:52 #5
mellemrum mellem dato og tid, er VIGTIG....  :)
Avatar billede wisen Nybegynder
14. december 2004 - 13:55 #6
.. bare sæt sekunder til 0 :
  TvProgram P1 = new TvProgram( new DateTime(2004,12,13,13,48,00) );
Avatar billede wisen Nybegynder
14. december 2004 - 13:56 #7
.. og et svar :)
Avatar billede mc_goblen Praktikant
14. december 2004 - 14:11 #8
Tak til jer begge, for de brugbare svar. -

Problemet er at når jeg laver en
Console.WriteLine(P1.StartTidspunkt) så udskriver den også sekunderne:

"
13-12-2004 14:11:00
Press any key to continue
"


I øvrigt er det da vist d. 14 i dag :o) Hmm...
Avatar billede wisen Nybegynder
14. december 2004 - 14:16 #9
prøv med P1.StartTidspunkt.ToString("mm-dd-YYYY hh:MM");
Avatar billede wisen Nybegynder
14. december 2004 - 14:17 #10
det skal være "dd-MM-yyyy hh:mm" istedet ;)
Avatar billede mc_goblen Praktikant
14. december 2004 - 14:20 #11
Ja, så er vi ved at være på rette spor. Sidste problem er så bare at den kører efter 12-timers ur.

F.eks:

13:25 = 01:25
21:50 = 09:50
Avatar billede wisen Nybegynder
14. december 2004 - 14:22 #12
... så skal det sikkert være "dd-MM-yyyy HH:mm"
Avatar billede wisen Nybegynder
14. december 2004 - 14:22 #13
jeg kan aldrig huske de forkortelser :)
Avatar billede mc_goblen Praktikant
14. december 2004 - 14:32 #14
Så for satan :) Nu har jeg sgu et program som gir den gas :)

Du ska' ha' tak for hjælpen. - Jeg håber det er okay med ThePartyDog at du får de få point som er på spil.

Tak til Jer begge.
Avatar billede the_party_dog Nybegynder
14. december 2004 - 14:33 #15
Jeg er ikke ude efter points.. Jeg hjælper hvor min viden strækker sig til... Held og lykke med det.. :)
Avatar billede mc_goblen Praktikant
14. december 2004 - 14:38 #16
Det ska du ha' tak for! - Det er dejligt at folk er villige til at hjælpe hinanden :)
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester