我有一个服务器端方法,如下所示计算年龄并记录出生日期和当前日期:
protected int CalculateAge(DateTime DOB, DateTime now)
{
int age = now.Year - DOB.Year;
if (now.Month < DOB.Month || (now.Month == DOB.Month && now.Day < DOB.Day)) age--;
return age;
}
现在我想在gridview标签字段中绑定年龄,如下所示:
<asp:Label ID="lblAge" Text='<%# CalculateAge(Eval("DOB"),Eval(DateTime.Now)) %>' runat="server"></asp:Label>
但它说它有无效的论点。
我有什么选择使用CalculateAge方法?
编辑:所以,我决定摆脱DateTime.Now并使用DOB作为唯一的输入参数,如下所示:
protected int CalculateAge(DateTime DOB)
{
int age = DateTime.Now.Year - DOB.Year;
if (DateTime.Now.Month < DOB.Month || (DateTime.Now.Month == DOB.Month && DateTime.Now.Day < DOB.Day)) age--;
return age;
}
和
<asp:Label ID="lblAge" Text='<%# CalculateAge(Bind("DOB")) %>' runat="server"></asp:Label>
它仍然说这个方法的无效参数