Wie berechnet man das Alter einer Person anhand des Geburtsdatums (DateTime) in C#?
Hallo zusammen! Ich bin neu in C# und schreibe eine kleine Anwendung zur Kundenverwaltung. Ich muss automatisch das Alter einer Person basierend auf ihrem Geburtsdatum berechnen, das als `DateTime` gespeichert ist.
Das Problem ist, dass das einfache Subtrahieren des aktuellen Datums vom Geburtsdatum und Teilen durch 365 nicht korrekt funktioniert. Schaltjahre, unterschiedliche Anzahl von Tagen in Monaten – all das führt zu Ungenauigkeiten. Ich habe diesen Code ausprobiert:
```csharp
DateTime birthDate = new DateTime(2000, 2, 29); // 29. Februar
DateTime today = DateTime.Today;
int age = (today - birthDate).Days / 365;
Console.WriteLine(age); // Gibt manchmal 23 aus, obwohl es 24 sein sollte
```
Aber für Personen, die am 29. Februar geboren sind, oder für diejenigen, deren Geburtstag im aktuellen Jahr noch nicht stattgefunden hat, ist das Ergebnis falsch. Wie kann man das Alter korrekt und zuverlässig berechnen?