zoukankan      html  css  js  c++  java
  • EF批量插入数据(Z.EntityFramework.Extensions)

    EF用原生的插入数据方法DbSet.ADD()和 DbSet.AddRange()都很慢。所以要做大型的批量插入只能另选它法。

    1.Nugget

    2.代码

    using EF6._0Test.EF;
    using System;
    using System.Collections.Generic;
    using System.Diagnostics;
    using System.Linq;
    
    namespace EF6._0Test
    {
        class Program
        {
            static void Main(string[] args)
            {
                using (Jason_TestEntities db = new Jason_TestEntities())
                {
                    List<wolf_example> list = new List<wolf_example>();
                    for (int i = 0; i < 50000; i++)
                    {
                        list.Add(new wolf_example()
                        {
                            type = i,
                            Name = "Name" + i.ToString(),
                            Money = i,
                            CTime = DateTime.Now,
                            UserID = i,
                            Remak = "Remak" + i.ToString(),
                            Sex = i,
                            IsShow = true,
                        });
                    }
                    Stopwatch watch = Stopwatch.StartNew();
                    db.BulkInsert(list);
                    db.BulkSaveChanges();
                    watch.Stop();
                    Console.WriteLine(string.Format("{0} 条数据, 用时 {1} milliseconds.", list.Count(), watch.ElapsedMilliseconds));
                    Console.ReadLine();
                }
            }
    
    
        }
    }

    3.运行效果

  • 相关阅读:
    08-01集合运算
    07-03成员运算符
    07-02集合
    07-01结构与封装
    06-01字符串格式化.md
    06-03线性结构与切片
    06-02字符串与bytes
    05-02命名元组
    05-01元组
    04-01列表与常用操作
  • 原文地址:https://www.cnblogs.com/lgxlsm/p/7844833.html
Copyright © 2011-2022 走看看