我有一个财产DateOfBirth
和一个财产Age
。
DateOfBirth
是DateTime
数据类型,Age
是int
数据类型。
我想在构造函数中计算人的年龄,我有:
private int CalculateAge(DateTime birthDate, DateTime now)
{
int age = now.Year - birthDate.Year;
if (now.Month < birthDate.Month || (now.Month == birthDate.Month && now.Day < birthDate.Day))
{
age--;
}
return age;
}
public virtual DateTime? Dob { get; set; }
public virtual int Age { get; set; }
public MyObject()
{
Age = CalculateAge(Dob, DateTime.Now);
}
在编译时,我收到以下错误:
最佳重载方法匹配 ... 有一些无效参数
和
无法从“System.DateTime”转换?到 System.DateTime