格式化日期的时候出现“对象不能从 DBNull 转换为其他类型。 ”的错误

aspx页面源码为:

 

<%=dt.Rows[i]["S_DATE1"].ToString()%>

但是这样页面上不知会显示年月日,而且还显示时分秒,现在我们不需要时分秒,只需要在页面上年月日足矣。

首先想到的是这样:

1.在cs文件中建一个方法,用来对时间转换

protected string FormatDate(DateTime datetime) 
{
return datetime.ToShortDateString().ToString();
}

2.aspx页面中

<%=FormatDate(Convert.ToDateTime(dt.Rows[i]["S_DATE1"].ToString()))%>

但是,会报错的

如果报错的话就在前面加上一句:

<% if(dt.Rows[i]["S_DATE1"] != DBNull.Value)%>

 

posted on 2012-04-05 12:43  LitDev  阅读(929)  评论(0编辑  收藏  举报