c# - 将 TemplateField 转换为 DateTime - 空白行
问题描述
即使单元格中存在日期,所有日期都将变为空。这是来自 gridview 模板字段。我正在尝试转换那些不为空的单元格,但它们都是空的。
asp:Label ID="Label13" runat="server" Text='<%# Eval("assigned_date") != null ? "" : Convert.ToDateTime(Eval("assigned_date")).ToString("MM/dd/yyyy") %>'></asp:Label>
解决方案
最好在后面的代码上创建一个函数并调用该函数 - 避免内联Eval
。所以代码将如下:
<asp:Label ID="Label13" runat="server" Text='<%# getDateTimeIfExist(Container.DataItem)%>'></asp:Label>
和后面的代码
protected string getDateTimeIfExist(object oItem)
{
var DateTimeToRender = DataBinder.Eval(oItem, "assigned_date") as DateTime?;
if (DateTimeToRender != null)
return DateTimeToRender.GetValueOrDefault().ToString("MM/dd/yyyy");
else
return string.Empty;
}
推荐阅读
- java - 让 Chathead 气泡在 android 中永远运行
- regex - 改进正则表达式以重命名文件
- python - 安装numpy?
- reactjs - 反应控制输入
- laravel - 用于嵌套 jsonb 的雄辩的 Where 子句。PostgreSQL
- python - 使用 Selenium 制作 Instagram Bot
- python - Python-Bokeh 应用程序:无法通过单击 Bokeh Button 小部件将更新的数据从 Webapp 导出到本地系统
- python - 如何使用 Python 打开命令提示符,更改目录然后传递包含变量的字符串?
- node.js - 如何使用 `apollo-server` 加载 .graphql 文件?
- python - 尝试在给定带有键列表的 xls 文件的情况下导出字典值列表