我正在使用实体框架的asp网络核心。我有一个datetimepicker
我正在使用日历。我已经使用jquery自定义了它的格式。datetime格式从mm-dd-yyyy转换为yyyy-mm-dd在c#
$('.datepicker').datetimepicker({
format: 'yyyy-mm-dd'
});
这显示了用户的日期形式。 ,然后将其转换为C#datetime我将它以相同的格式保存在数据库中。每件事情都是正确的,直到现在。 现在我下次访问时,如果有数据,此页面必须预先填写。这次在日历的文本框中显示了一些东西,如0007/02/19
,其中输入的日期为1993/07/02
,保存在数据库中的日期为7/2/1993
。我试过使用
String DateString = Convert.ToString(ProfileDetails.DateOfBirth);
IFormatProvider culture = new CultureInfo("en-US");
DateTime dateVal = DateTime.ParseExact(DateString, "MM/dd/YYYY", CultureInfo.InvariantCulture);
DateTime date = Convert.ToDateTime(dateVal);
user.DateOfBirth = dateVal;
这个,但得到的错误字符串不是有效的日期时间格式。在我的模式中,我将日期定义为日期时间。我没有得到解决方案。任何人都可以给我正确的方式来完成这一点。
您的文章是相当混乱。你在你的第一行代码中将一个日期转换为一个字符串,但是接下来会做一些其他我不太关注的东西。你能解释另外四行代码的用途吗? – Chris
@Chris我也不理解代码,但我只是修复并发布了一个答案。有时候最好不要问 –
@ J.Doe:除了你的分析结果是平的,因为我现在已经对你的回答发表了评论。我认为第一行生成类似“07/02/1993”的日期字符串是相当合理的,但由于日期选择器需要'yyyy-mm-dd'格式的东西,因此它可能会尝试聪明并将日期解析为“ yyyy = 07,mm = 02,dd = 19'。这就是为什么知道其他代码在哪里会非常有用,为什么OP还应该明确它们如何将数据传递到日期选择器或文本框。 – Chris