我的aspx.cs文件里有这个
var RecordID = db.Records.Where(m => m.EmployeeID == employee.EmployeeID).ToList();
dltRecordDate.DataSource = RecordID;
dltRecordDate.DataBind();把这个放在.aspx里
<asp:LinkButton CssClass="list-group-item" Width="100%" BorderStyle="None" Font-Size="Medium" ID="lbnDate" runat="server" Text='<%# Bind("VisitDate") %>' CommandArgument='<%# Bind("RecordNumber") %>'></asp:LinkButton>My VisitDate是字符串。我想做这样的事
Text='<%#DateTime.Parse(Bind("VisitDate")).ToString("dddd, MMMM dd, yyyy")%>'但这不管用。谢谢
另一种选择是打印递增号1 2 3 4 5。
发布于 2016-04-18 04:41:04
在后端定义一个方法(GetValidDate),并使用如下方法:
protected string GetValidDate(object inputDate)
{
DateTime dateObject;
if (inputDate != null)
{
if (DateTime.TryParse(inputDate.ToString(), out dateObject))
{
return dateObject.ToString("dddd, MMMM dd, yyyy");
}
}
return "invalid Input";
}标记将是:
Text=<%# GetValidDate(Eval("VisitDate"))%>因此,如果日期是可转换的(有效日期),您将获得所需格式的日期,否则特定的文本框将显示文本为"invalid Input"。
最新情况:
在注释中,您使用(string)Eval("VisitDate")将对象转换为字符串,但如果绑定值为null,则不是很好,因此为了避免这种情况,我们可以将方法签名更改为接受对象,如果不是null,则执行转换。
https://stackoverflow.com/questions/36685538
复制相似问题