该字符串未被识别为有效的 DateTime。

zhangboya411 2012-05-16 04:39:09



行 24: cusInfo.CusPwd = txtPwd.Text;
行 25: cusInfo.RightId = 1;
行 26: cusInfo.Birthday =DateTime .Parse ( txtBirthday.Text);//此行出错
行 27: cusInfo.Address = txtAddress.Text;
行 28: cusInfo.Gender = ddlGender.SelectedValue;

源文件: F:\毕业设计\webShop\WebShop\Register.aspx.cs 行: 26

堆栈跟踪:


[FormatException: 该字符串未被识别为有效的 DateTime。]
System.DateTimeParse.Parse(String s, DateTimeFormatInfo dtfi, DateTimeStyles styles) +2844238
System.DateTime.Parse(String s) +25
WebShop.Register.btnRegister_Click(Object sender, EventArgs e) in F:\毕业设计\webShop\WebShop\Register.aspx.cs:26
System.Web.UI.WebControls.Button.OnClick(EventArgs e) +111
System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument) +110
System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +10
System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +13
System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +36
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +1565




把出错行换成
cusInfo.Birthday = Convert.ToDateTime(txtBirthday.Text);
cusInfo.Birthday = Convert.ToDateTime(txtBirthday.Text.trim());
cusInfo.Birthday =DateTime.Parse(txtBirthday.Text.trim())也出现同样的错误,数据库中birthday为datetime类型
...全文
569 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
聆聽 2013-09-16
  • 打赏
  • 举报
回复
试过Convert.ToDateTime();么
AGWL1990 2012-05-16
  • 打赏
  • 举报
回复
这是为什么呢?我用的时候没有出过错误
  • 打赏
  • 举报
回复
你应该控制前台验证,控制良好的输入比处理多种多样的输出要容易的多
EnForGrass 2012-05-16
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 的回复:]

引用 1 楼 的回复:

txtBirthday.Text的值不是一个格式正确的日期字符串,检查一下,确保其格式正确。

那样写就正确了。为什么要正确的格式呢?怎么才能随便写一个字符串类的让他自动转换,如“19900520”这个
[/Quote]
就如同这种,需要指定格式,但是你不进行格式的,一般默认你操作系统的设置格式
txtBirthday.Text.ToString("yyyy-MM-dd hh:mm:ss")
_萧萧 2012-05-16
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 的回复:]
引用 1 楼 的回复:

txtBirthday.Text的值不是一个格式正确的日期字符串,检查一下,确保其格式正确。

那样写就正确了。为什么要正确的格式呢?怎么才能随便写一个字符串类的让他自动转换,如“19900520”这个
[/Quote]
你要限制他 只能选不能填
Mirror然 2012-05-16
  • 打赏
  • 举报
回复
很明显错误了~
你强制转化后的值 不符合datetime格式
zhangboya411 2012-05-16
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]

txtBirthday.Text的值不是一个格式正确的日期字符串,检查一下,确保其格式正确。
[/Quote]
那样写就正确了。为什么要正确的格式呢?怎么才能随便写一个字符串类的让他自动转换,如“19900520”这个
mabaolin 2012-05-16
  • 打赏
  • 举报
回复
或者datetimepicker的 format设为 custom, customformat = yyyy-MM-dd
因为你的串中是中文显示。
mabaolin 2012-05-16
  • 打赏
  • 举报
回复
txtBirthday.Text.tostring("yyyy-mm-dd hh:mm:ss")
  • 打赏
  • 举报
回复
断点看看txtBirthday.Text是什么,能否为空,要么就做个异常处理
dalmeeme 2012-05-16
  • 打赏
  • 举报
回复
txtBirthday.Text的值不是一个格式正确的日期字符串,检查一下,确保其格式正确。

62,268

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧