/// <summary> /// /// </summary> /// <param name="dataTable"></param> /// <param name="elementType"></param> /// <param name="tableFunc"></param> /// <param name="columnMapping"></param> public void AddTS(System.Data.DataTable dataTable, Type elementType = null, System.Linq.Expressions.Expression <Func <string, string> > tableFunc = null, Dictionary <string, string> columnMapping = null) { changeInternalDbProvider(elementType); TransactionScopeBulkCopyEntity entity = new TransactionScopeBulkCopyEntity() { DataTable = dataTable, ColumnMapping = columnMapping, TableName = elementType == null ? dataTable.TableName : elementType.GetEntityName(), TableFunc = tableFunc, }; if (string.IsNullOrEmpty(dataTable.TableName)) { throw new DMSFrameException(dataTable.ToString() + "未指定表名进行批量导入数据库!"); } TransactionScopeEntityList.Enqueue(entity); }
/// <summary> /// /// </summary> /// <typeparam name="T"></typeparam> /// <param name="list"></param> /// <param name="tableFunc"></param> /// <param name="columnMapping"></param> public void AddTS <T>(IEnumerable <T> list, System.Linq.Expressions.Expression <Func <string, string> > tableFunc = null, Dictionary <string, string> columnMapping = null) where T : class, IEntity, new() { if (list == null || list.Count() == 0) { return; } changeInternalDbProvider(typeof(T)); TransactionScopeBulkCopyEntity entity = new TransactionScopeBulkCopyEntity() { DataTable = list.ToDataTable(), ColumnMapping = columnMapping, TableName = typeof(T).GetEntityName(), TableFunc = tableFunc, }; TransactionScopeEntityList.Enqueue(entity); }