public IQueryable <T> BulkInsertInTempTable <T>(IEnumerable <T> entityCollection) where T : class { TemporaryTableGeneration.CreateTemporaryTable <T>(DataContext); BulkInsertHelper.BulkInsertWithTransaction(entityCollection, DataContext); _createdTemporaryTableNames.Add("#" + typeof(T).Name); return(DataContext.Set <T>()); }
/// <summary> /// 標準的な一括InsertのSQLを用いて、指定されたレコードを一括挿入します。 /// </summary> public override int InsertRows <T>(IEnumerable <T> data, Expression <System.Func <T, dynamic> > targetColumns, IDbConnection connection, IDbTransaction transaction, int?timeout = null) { var ret = 0; foreach (var sql in BulkInsertHelper.BuildBulkInsert(this, data, targetColumns, Value2SqlLiteral)) { ret += connection.Execute(sql, null, transaction, timeout); } return(ret); }
public static void CopyData() { var remote = new MatchingRequestRepository(); var pages = remote.GetAll(); int i = 0; foreach (var page in pages) { BulkInsertHelper.BulkSave(page, "Server=localhost;Database=TestDB;Trusted_Connection=True;", "[dbo].[MatchingRequest]"); Console.WriteLine(i++); } }