Hvordan får jeg frem dagens dato uten klokkeslett?

Jeg kan hente dato og klokkeslett ved hjelp av:

DateTime now = DateTime.Now;

Hvordan kan jeg få gjeldende dato og klokkeslett separat i selve DateTime-formatet?

Jeg bruker ikke dialogboksen DateTime-velger i ASP.NET (C#).

Løsning

Du kan hente bare dagens dato som en DateTime ved hjelp av egenskapen Today:

 DateTime today = DateTime.Today;

eller mer generelt kan du bruke egenskapen Date. Hvis du for eksempel vil ha UTC-datoen, kan du bruke:

 DateTime dateTime = DateTime.UtcNow.Date;

Det er imidlertid ikke helt klart om det er det du trenger eller ikke... hvis du bare ønsker å skrive ut datoen, kan du bruke:

Console.WriteLine(dateTime.ToString("d"));

eller bruke et eksplisitt format:

Console.WriteLine(dateTime.ToString("dd/MM/yyyy"));

Se mer om formatstrengene standard og tilpasset for dato/klokkeslett. Avhengig av situasjonen kan det også være lurt å angi kultur.

Hvis du vil ha et mer uttrykksfullt dato/tid-API som lar deg snakke om datoer separat fra klokkeslett, kan du se på Noda Time-prosjektet som jeg har startet. Det er ikke klart for produksjon ennå, men vi vil gjerne høre hva du har lyst til å gjøre med det...

Kommentarer (0)

Bruk egenskapen DateTime.Today. Den returnerer datokomponenten av DateTime.Now. Det tilsvarer DateTime.Now.Date.

Kommentarer (0)

Det finnes ingen innebygd dato-type i .NET.

Konvensjonen er å bruke en DateTime med tidsdelen satt til midnatt.

Den statiske egenskapen DateTime.Today gir deg dagens dato.

Kommentarer (0)