C#-正在更新SQL Server中的DateTime列

本文关键字:中的 DateTime Server SQL 更新 C#- | 更新日期: 2023-09-27 18:20:41

这是我在论坛上的第一篇帖子。我找不到任何能回答我问题的帖子。如果你真的找到了,请回复链接,这样我就可以看一看了。

我正在尝试使用C#更新SQL Server中的DateTime列。

在第一个控制台应用程序中,我已经创建了一个对象:

    NewCollegeEntities context = new NewCollegeEntities();
    College college = new College();
    college.collegeName = "BCIT";
    college.established = new DateTime(1960, 1, 1);
    context.Colleges.Add(college);
    context.SaveChanges();

现在,在第二个控制台应用程序中,我试图为刚刚创建的反对添加一天:

    NewCollegeEntities context = new NewCollegeEntities();
    College college = (from c in context.Colleges
                       where c.collegeName == "BCIT"
                       select c).FirstOrDefault();

    college.established.Value.AddDays(1);
    context.SaveChanges();

当我运行第二个控制台应用程序时,结果与第一个控制台应用软件-1960,1,1相同。我似乎没有对数据库进行任何更改。

请帮助我了解发生了什么以及如何解决这个问题。如果您需要更多信息,也请告诉我!谢谢

C#-正在更新SQL Server中的DateTime列

这是一个常见的疏忽。AddDays()方法(以及其他类似方法)实际上并没有修改您调用它的值。它返回一个新的DateTime,该值已修改。

只需使用新的DateTime:

college.established = college.established.Value.AddDays(1);