0

我正在尝试将具有“MM/dd/yyyy”格式的日期插入详细视图中的日期格式字段中。但我收到错误消息:

 String was not recognized as a valid DateTime

我试过喜欢

<asp:TextBox ID="TextBox2" runat="server" 
Text='<%# Bind("RenewalDate","{0,MM/dd/yyyy}")%>' ></asp:TextBox>

如何插入格式为 MM/dd/yyyy 的日期????

4

2 回答 2

3

格式字符串无效。您需要在占位符后使用冒号而不是逗号:

Text='<%# Bind("RenewalDate","{0:MM/dd/yyyy}")%>'

这应该可以解决问题,假设RenewalDate是一DateTime列。如果它不是DateTime列,则需要在应用格式之前对其进行转换:

Text='<%# Convert.ToDateTime(Bind("RenewalDate")).ToString("MM/dd/yyyy") %>'

编辑

为确保输入有效,您可以添加比较和必填字段验证器:

<asp:RequiredFieldValidator ID="reqDateValidator" runat="server" Display="Dynamic" ErrorMessage="*" ControlToValidate="TextBox1" />
<asp:CompareValidator
    id="dateValidator" runat="server" 
    Type="Date"
    Operator="DataTypeCheck"
    ControlToValidate="TextBox1" 
    ErrorMessage="Invalid Date">
</asp:CompareValidator>
于 2012-04-04T16:33:49.477 回答
0

RenewalDate从数据库中导入的对象不是有效DateTime对象。

否则 - 它不会向您显示此错误。

显示您获得值的查询。

于 2012-04-04T16:20:35.020 回答