【发布时间】:2016-08-05 16:15:57
【问题描述】:
好的,我正在使用 SQL Server Express 2008 和 .Net 3.5 (c#)
我在数据库中有几个日期时间字段,我正在尝试对一行进行编辑(使用 Linq-to-Sql)我收到错误“未找到或更改行”。
我花了一些时间获取生成的 SQL,似乎问题是由附加到日期时间的毫秒数引起的。
生成的 SQL 不起作用,
@p5: Input DateTime (Size = 0; Prec = 0; Scale = 0) [20/10/2009 16:04:45]
@p6: Input DateTime (Size = 0; Prec = 0; Scale = 0) [23/10/2009 10:15:36]
@p7: Input DateTime (Size = 0; Prec = 0; Scale = 0) [23/10/2009 09:27:27]
AND ([SignUpDate] = @p5)
AND ([LastActivityDate] = @p6)
AND ([LastLoginDate] = @p7)
如果我自己修改它就可以了,
@p5: Input DateTime (Size = 0; Prec = 0; Scale = 0) [20/10/2009 16:04:45.390]
@p6: Input DateTime (Size = 0; Prec = 0; Scale = 0) [23/10/2009 10:15:36.733]
@p7: Input DateTime (Size = 0; Prec = 0; Scale = 0) [23/10/2009 09:27:27.747]
AND ([SignUpDate] = @p5)
AND ([LastActivityDate] = @p6)
AND ([LastLoginDate] = @p7)
我有哪些方法可以解决这个问题?
只是添加这是我的编辑代码,
var UserToEdit = this.GetUser(UserId);
UserToEdit.Forename = Fields["Forename"];
UserToEdit.Surname = Fields["Surname"];
UserToEdit.DateOfBirth = Convert.ToDateTime(Fields["DateOfBirth"]);
UserToEdit.DisplayName = Fields["DisplayName"];
UserToEdit.TelephoneNumber = Fields["TelephoneNumber"];
_db.SubmitChanges();
【问题讨论】:
标签: c# linq-to-sql sql-server-express sql-server-2008-express