使用实体框架模型插入数据列表

问题描述 投票:0回答:1

要向数据库添加新记录,我通常使用

 context.TableName.Add(TableEntityInstance);
。当我为同一个表添加多个记录时,我通常使用
foreach 
循环遍历列表。
foreach (var item in list) { context.TableName.Add(item); }
可以一次性将整个列表添加到数据库中。如:
context.TableName.Add(list);
只是想知道这是否可能。如果是这样,这种方法有什么优点或缺点?

c# database entity-framework
1个回答
1
投票

有一种名为

.AddRange()
.AddRangeAsync()
的方法,用于将项目列表添加到上下文中。

一个缺点是如果其中一项已存在于数据库中,则整个方法调用将失败。

优点是与数据库之间只需一次往返。 在之前的循环中,每个

.Add()
调用都会导致数据库往返。

© www.soinside.com 2019 - 2024. All rights reserved.