我正在做一个项目来保存大象的详细信息,然后在大象死后,我需要计算它们的年龄并将其显示在文本框中。为了检索给定大象的生日,我使用了一个数据表。然后,我打算通过从当前年份中减去出生年份来找到年龄。
代码如下:
String elid = cmbidentyno.SelectedItem.ToString();
con.Open();
String select_query = "SELECT ElephantName,DOBirth FROM ElephantData WHERE ElephantID='" + elid + "'";
cmd = new SqlCommand(select_query, con);
SqlDataReader R = cmd.ExecuteReader();
while (R.Read())
{
txtelname.Text = R.GetValue(0).ToString();
DateTime now = DateTime.Today;
DateTime birth = DateTime.R.GetValue(2);
int age = now.Year - birth.Year;
txtdesage.Text = age.ToString();
}
elid = cmbidentyno.SelectedItem.ToString();
con.Close();
但这不起作用。有解决方案吗?
答案 0 :(得分:2)
... DateTime birth = DateTime.R.GetValue(2); ...
在DateTime
中没有属性R
。
如果您想阅读DateTime
,请使用GetDateTime()
。因此,代码中出现问题的行变为:
...
DateTime birth = R.GetDateTime(2);
...