我正在尝试将带有“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 ????
插入日期答案 0 :(得分: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>
答案 1 :(得分:0)
从数据库导入的RenewalDate
不是有效的DateTime
对象。
否则 - 它不会显示此错误。
显示您获得该值的查询。
答案 2 :(得分:0)
您可以查看有关如何设置日期值格式的文章 Custom dates format