gpt4 book ai didi

entity-framework - EF 5 AddOrUpdate 重复数据

转载 作者:行者123 更新时间:2023-12-01 02:25:22 27 4
gpt4 key购买 nike

这是 Seed 方法中的代码:

var city = new City { Name = "A" };

var nh = new List<Neigh>
{
new Neigh { City = city, Name = "N1" },
new Neigh { City = city, Name = "N2" },
new Neigh { City = city, Name = "N3" },
//new Neigh { City = city, Name = "N4" },
};

context.Neighs.AddOrUpdate(
p => p.Name,
nh.ToArray()
);

运行 update-database 后,一切正常。我可以多次运行它没有问题。但是,如果在某个时候我取消注释第四个街区并再次运行更新数据库,我最终会得到两条记录,城市“A”和 N4 指向该城市,而其余记录指向原始城市。

如果列表更新,如何防止插入重复的城市?

最佳答案

您必须通过检查城市是否已经存在来启动脚本:

var city = context.Cities.FirstOrDefault(c => c.Name == "A") 
?? new City { Name = "A" };

关于entity-framework - EF 5 AddOrUpdate 重复数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16851536/

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