Sql server 正在更新StoreGeneratedPattern.Computed值
我一直试图找到一个解决方案,来更新设置为StoreGeneratedPattern.Computed的实体模型的值,但没有成功 列[Active]的默认值在DB中设置为true。最初我使用的是StoreGeneratedPattern.Identity,但当更新标识项时,会出现错误“不支持使用“Identity”模式修改列”。我更改为Computed,没有收到错误,但保存更改后该值不会更新 这是我的密码:Sql server 正在更新StoreGeneratedPattern.Computed值,sql-server,vb.net,entity-framework,Sql Server,Vb.net,Entity Framework,我一直试图找到一个解决方案,来更新设置为StoreGeneratedPattern.Computed的实体模型的值,但没有成功 列[Active]的默认值在DB中设置为true。最初我使用的是StoreGeneratedPattern.Identity,但当更新标识项时,会出现错误“不支持使用“Identity”模式修改列”。我更改为Computed,没有收到错误,但保存更改后该值不会更新 这是我的密码: Dim ent As New EntityModel Dim user As SP_Use
Dim ent As New EntityModel
Dim user As SP_User = (From a In ent.SP_User
Where a.usr_ID = 1
Select a).First
For Each pho As SP_User_PhoneNumber In user.SP_User_PhoneNumber
Dim foundmatch As u_UserPhoneNumber = Array.Find(PhoneNumers, Function(p As u_UserPhoneNumber) p.PhoneNumberID = pho.usrp_ID)
If foundmatch Is Nothing Then
pho.usrp_Active = False
End If
Next
ent.SaveChanges()
我的问题的解决方案是将StoreGeneratedPattern设置为none,将默认值设置为True。数据库默认值仍然设置为True1,因此,如果插入不是来自EF,则允许数据库设置该值。如果数据类型不同,则可能存在漏洞,但在我的场景中,解决方案有效。我认为您将计算列和列与默认值混淆了。你甚至不能用SQL更新计算列。我同意我对这方面不太了解,我正在学习。你对我如何做到这一点有什么建议吗?是的,删除StoreGeneratedPattern规范。好的,然后我如何管理SQL中的默认值,因为我必须在SQL中生成默认值与论坛网站不同,我们不使用感谢、感谢的帮助或签名。看见顺便说一句,这是提前感谢,不是提前感谢。