当前位置:  开发笔记 > 编程语言 > 正文

DateTime未正确保存到我的数据库中

如何解决《DateTime未正确保存到我的数据库中》经验,为你挑选了1个好方法。

我正在努力为什么我DateTime被错误地保存到我的数据库中.

我将值20/12/2015(作为字符串)与格式()一起传递给它dd/MM/yyyy并将其解析为a DateTime但它始终保存到我的SQL Server数据库中06/12/2015

public ActionResult SaveSettings(ProjectPlan projectPlan)
{
     projectPlan.StartDate = DateTime.ParseExact(projectPlan.ShortDateTime, projectPlan.DateFormat, null); //ShortDateTime is 20/12/2015, DateFormat is dd/MM/yyyy
     var plan = this._dc.ProjectPlans.Single(a => a.Id == projectPlan.Id);
     plan = projectPlan;
     this._dc.SaveChanges();
}

Darin Dimitr.. 6

嗯,你不是指更新StartDate实体的属性然后将其保存回数据库:

public ActionResult SaveSettings(ProjectPlan projectPlan)
{
     var plan = this._dc.ProjectPlans.Single(a => a.Id == projectPlan.Id);
     plan.StartDate = DateTime.ParseExact(projectPlan.ShortDateTime, projectPlan.DateFormat, null);
     this._dc.SaveChanges();
}

在这一行,你基本上杀死了EF所知道的每个上下文:

plan = projectPlan;

因此,如果您查看针对SQL数据库生成的实际SQL查询,您会注意到正好更新了0行.



1> Darin Dimitr..:

嗯,你不是指更新StartDate实体的属性然后将其保存回数据库:

public ActionResult SaveSettings(ProjectPlan projectPlan)
{
     var plan = this._dc.ProjectPlans.Single(a => a.Id == projectPlan.Id);
     plan.StartDate = DateTime.ParseExact(projectPlan.ShortDateTime, projectPlan.DateFormat, null);
     this._dc.SaveChanges();
}

在这一行,你基本上杀死了EF所知道的每个上下文:

plan = projectPlan;

因此,如果您查看针对SQL数据库生成的实际SQL查询,您会注意到正好更新了0行.

推荐阅读
谢谢巷议
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有