当前位置: 代码迷 >> ASP.NET >> 一个绑定表达式解决方案
  详细解决方案

一个绑定表达式解决方案

热度:3558   发布时间:2013-02-25 00:00:00.0
一个绑定表达式
<%#DataBinder.Eval(Container.DataItem, "AddTime ")%> 如果addtime为空显示---,不为空就格式化成yyyy-MM-dd方式,如何写绑定表达式呢?不在后台代码中处理。


------解决方案--------------------------------------------------------
<%# if(DataBinder.Eval(Container.DataItem, "AddTime ").ToString().Length == 0) DataBinder.Eval(Container.DataItem, "AddTime ", "yyyy-MM=dd ") else "--- " %>

好像只有这样了,但是需要调用两次 Eval (内部使用反射),故不建议这样,还是使用后台代码转换 如

<# FormatMyTime(DataBinder.Eval(Container.DataItem, "AddTime ")) %>

// .cs
string FormatMyTime(object o) {
return (o == null) ? "--- " : ((DateTime)o).ToString( "yyyy-MM=dd ");
}


------解决方案--------------------------------------------------------
<%#DataBinder.Eval(Container.DataItem, "AddTime ")== " "? "—— ":DataBinder.Eval(Container.DataItem, "AddTime ").ToString( "yyyy-MM-dd ")%>
------解决方案--------------------------------------------------------
<%#DataBinder.Eval(Container.DataItem, "AddTime ")== " "? "—— ":DataBinder.Eval(Container.DataItem, "AddTime ", "{0:d} ")%>

我也来一个
  相关解决方案