我知道这样的问题在这里吨。请通过一次无法解析日期时间在C#
我有一个string
来自具有当前日期的文本框,例如, 10/9/2012,我的课程属性为DateTime?
类型。我正在使用Convert.ToDateTime(datetime_string_from_textbox)
,但它给了我一个FormatException
。然后我试着按照Jon Skeet here的建议尝试DateTime.ParseExact(string, format, CultureInfo, DateTimeStyle)
,但它给了我同样的例外。
还有一件事—我的本地机器日期时间格式是dd-mm-yyyy
。当我切换到mm/dd/yyyy
格式的代码工作正常。所以基本上,我想知道如何将有效的日期时间字符串解析为DateTime
对象,而不考虑区域设置,或任何设置或本地机器上的任何依赖关系。
这可能吗?
更新:代码中使用
employee.JoiningDate = DateTime.ParseExact(string.Format("{0} 00:00:00", JoiningDate.Text.Trim()), "MM/dd/yyyy hh:mm:ss", CultureInfo.InvariantCulture, DateTimeStyles.AdjustToUniversal | DateTimeStyles.AssumeUniversal);
存在的问题,并要求解决
我的系统日期时间显示24-10-2012(即10月24日),我有10个/ 17/2012年在我的文本框(即,10月17日),因为文本框的日期也是有效的,部署后再次客户端日期时间格式将成为未知,所以,我想要一个通用的方式来解析任何有效的日期时间字符串,无论区域设置。这可能吗?
你用什么格式字符串? – Bridge
你用DateTime.ParseExact指定了什么格式? – AdaTheDev
使用蒙版控制并将输入限制为特定格式。解析日期时使用相同的格式。 – jags