gpt4 book ai didi

c# - Entity Framework 添加时保存更改

转载 作者:搜寻专家 更新时间:2023-10-30 23:13:48 25 4
gpt4 key购买 nike

如果我所做的只是向数据库中添加新项目,SaveChanges() 返回的数量是否会小于添加的数量?

例如,如果我添加 5 个新项目,它会在某些错误情况下返回值 3 吗?

基本上,我想确保仅捕获任何异常就足以进行错误检查。如果没有,检查哪些项目添加失败的最佳方法是什么。

这是一个示例(假设我们为 POCO 使用了一些 Person 类):

db = new Database();
db.People.Add(p1);
db.People.Add(p2);
db.People.Add(p3);
db.People.Add(p4);
db.People.Add(p5);
db.SaveChanges(); //Will this only return 0, 5, or throw an exception or can it return 3???

最佳答案

是的,如果任何实体未能插入,DbContext.SaveChanges() 将抛出异常。

返回的计数将匹配在数据库级别受影响的行数 - 因此如果行已经存在且未被修改,它将返回更少。如果您纯粹是插入新记录,检查计数就足够了。

See here .

关于c# - Entity Framework 添加时保存更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16989191/

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