我想根据出生日期来计算年龄,它应该四舍五入到最近 即1988年3月19日将产生于26和19/09/1988至25年。
以下是当前的实施。
var ts = DateTime.Now - dtBirthdate;
var age = ts.Days / 365;
答案 0 :(得分:3)
您当前实现的问题是整数除法。如果你用双倍替换它应该更好:
var ts = DateTime.Now - new DateTime(1988, 3, 19);
var age = Math.Round(ts.Days / 365.0);