Jag bloggar numera på http://blog.dileno.com ».

Prenumerera på RSS

Jämför datum och tid i C#

Vill man jämföra datum och tid i C# så behöver man jobba lite mer än i VB.NET där man kan använda sig av DateDiff().

I C# kan man använda sig av TimeSpan för att jämföra datum. Här är en metod i C# som använder TimeSpan för att få ut antalet dagar mellan två datum (metoden är public static för att enkelt kunna anropas via en basklass):

/// <summary>
/// Compare two given dates
/// </summary>
/// <returns>Number of days between days</returns>
public static int DateDiff(DateTime dt1, DateTime dt2)
{
int diff;

TimeSpan ts = dt1 - dt2;
diff = ts.Days;

return diff;
}

Metoden anropas på detta sätt, där jag väljer att räkna ner antalet dagar till nyårsafton:

try
{
litDiff.Text = DateDiff(DateTime.Now, new DateTime(2008, 12, 31)).ToString();
}
catch { }

Tänk på att det alltid är bra att använda sig av felhantering, i exemplet ovan med hjälp av try catch när jag skriver ut värdet till en Literal-kontroll.

I metoden DateDiff så valde jag att jämföra dagar mellan de givna datumen. Det går lika bra att jämföra på Hours, Milliseconds, Minutes och Seconds.

Skriv en kommentar





Till sidhuvudet

Clicky Web Analytics