gpt4 book ai didi

c# - LINQ to Entities 删除异常

转载 作者:太空宇宙 更新时间:2023-11-03 14:30:50 25 4
gpt4 key购买 nike

我有以下代码从数据库中删除用户:

var user = from u in db.Users
where u.Username == username
select u;

if (user.Count() > 0)
{
db.DeleteObject(user.First());
db.SaveChanges();
}

但是我遇到了这样的异常:

at System.Data.Mapping.Update.Internal.UpdateTranslator.Update(IEntityStateManager sta teManager, IEntityAdapter adapter)
at System.Data.EntityClient.EntityAdapter.Update(IEntityStateManager entityCache)
at System.Data.Objects.ObjectContext.SaveChanges(Boolean acceptChangesDuringSave)
at System.Data.Objects.ObjectContext.SaveChanges()
at MyCompany.SystemSoftware.DQMgr.User.DeleteUser(String username) in C:\workspace\SystemSoftware\SystemSoftware\src\dqm\User.cs:line 479

Users 表被少数其他表引用。可能是外键约束导致的?

最佳答案

解决此问题的最简单方法是将您的外键约束设置为 Cascade on Drop,当然,这是为了防止您准备丢失引用的记录。

否则,您可以尝试将用户对象上表示关系的属性设置为 null,然后删除用户。

关于c# - LINQ to Entities 删除异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2648302/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com