【问题标题】:Add Multiple Records Using Linq to Entity?使用 Linq 向实体添加多条记录?
【发布时间】:2011-07-26 14:31:26
【问题描述】:

我有一个应用程序,我在其中使用 linq to entity 现在我想在单个查询中存储多条记录。

我想以最少的数量击中 db。

其次请建议是否有任何选项可以在一个查询中插入多个唯一记录。

谢谢

首次编辑

for (int i = 0; i < 10; i++)
        {
            keywordlist k = new keywordlist();
            k.Keyword = i.ToString();
            k.Status = true;
            DbFlb.AddObject("keywordlists", k);
        }
DbFlb.SaveChanges();

但是这个代码数据库多次我需要查询只命中一次。

【问题讨论】:

  • 显示你目前编写的代码。
  • 您希望运行什么 SQL?您在 SQL 中的日常 INSERT 语句一次只插入一条记录,因此 EF 将做同样的事情。我能想到的首先在 SQL 中进行多次插入的唯一方法(在从文件中批量插入之外)是做一些丑陋的事情,比如 INSERT TBL SELECT 1 UNION SELECT 2 UNION SELECT 3
  • INSERT 可以插入任意数量的行:值 (1), (2), (3), ...

标签: c# linq linq-to-entities


【解决方案1】:

您可能对SQL Server Bulk Copy 操作感兴趣,Here 您可以下载将实体集合转换为 IDataReader 的转换器类。

Christophe Geers has a good explanation on this

【讨论】:

    猜你喜欢
    • 2012-08-19
    • 2011-02-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-10-07
    • 2021-08-14
    • 2013-06-30
    • 1970-01-01
    相关资源
    最近更新 更多