我正在编写此LINQ to EF查询以获取匹配项。
if (user.UserID > 0)
{
var TempUser = (from c in GSData.tblUsers
where c.UserID == user.UserID
select c).First();
..........
运行时user.UserID的值为579,并且存在匹配的行。但是我得到了错误
{"This property cannot be set to a null value."}
System.Data.ConstraintException was unhandled by user code
此外,它在设置中间名的地方出人意料地突破。它恰好是tblUsers数据库中具有nvarchar(20)的字段,值为null。
_MiddleName = StructuralObject.SetValidValue(value, false);
但是我写了类似的查询以获取匹配的项目,它们工作正常。我只是选择而不是更新任何值。所以我一直在理解为什么会发生这种情况。欢迎任何建议。
答案 0 :(得分:1)
删除实体模型中的表,然后从数据库中选择更新。 EF不会仅仅通过更新已存在的表来获取可空/不可空的更改。