Wie berechnet man das Alter einer Person basierend auf dem Geburtsdatum in C#?
Hallo zusammen! Ich bin ein Anfänger in C#-Entwicklung und bin auf eine scheinbar einfache Aufgabe gestoßen – das Alter eines Benutzers basierend auf seinem Geburtsdatum zu berechnen. Ich habe eine Variable `DateTime birthday` (z. B. `new DateTime(1990, 5, 15)`) und muss eine ganze Zahl der vollendeten Jahre bis zum heutigen Tag erhalten.\n\nIch habe den naheliegendsten Weg ausprobiert – das Geburtsdatum vom aktuellen Datum abzuziehen und die Differenz in Jahren zu nehmen:\n\n```csharp\nDateTime today = DateTime.Today;\nint age = today.Year - birthday.Year;\n```\n\nAber das funktioniert nicht korrekt! Wenn der Geburtstag einer Person in diesem Jahr noch nicht stattgefunden hat, wird das Alter um 1 Jahr zu hoch angegeben. Zum Beispiel, wenn heute der 1. Januar 2025 ist und der Geburtstag der 15. Mai 1990, dann gibt mein Code 35 Jahre aus, obwohl die Person tatsächlich erst 34 ist.\n\nIch habe auch versucht, `TimeSpan` zu verwenden: