要向数据库添加新记录,我通常使用
context.TableName.Add(TableEntityInstance);
。当我为同一个表添加多个记录时,我通常使用 foreach
循环遍历列表。 foreach (var item in list) { context.TableName.Add(item); }
可以一次性将整个列表添加到数据库中。如:context.TableName.Add(list);
只是想知道这是否可能。如果是这样,这种方法有什么优点或缺点?
有一种名为
.AddRange()
或 .AddRangeAsync()
的方法,用于将项目列表添加到上下文中。
一个缺点是如果其中一项已存在于数据库中,则整个方法调用将失败。
优点是与数据库之间只需一次往返。 在之前的循环中,每个
.Add()
调用都会导致数据库往返。