// Getting IDataReader from IEnumerable<T> static void Sample14() { Employee[] newEmployees = new Employee[] { new Employee() { CompanyID = 1, Name = "New Employee1", Age = 23, StartWorking = DateTime.UtcNow }, new Employee() { CompanyID = 1, Name = "New Employee2", StartWorking = DateTime.UtcNow }, new Employee() { CompanyID = 2, Name = "New Employee1" } }; IDataReader dataReader1 = newEmployees.ToDataReader(); IDataReader dataReader2 = newEmployees.Select(x => new { companyid = x.CompanyID, x.Name, phone = "111-111-111", startWorking = x.StartWorking.HasValue ? x.StartWorking : DateTime.UtcNow, x.Age }).ToDataReader(); }
static async Task Sample12Async() { Employee[] newEmployees = new Employee[] { new Employee() { CompanyID = 1, Name = "New Employee12", Age = 23, StartWorking = DateTime.UtcNow }, new Employee() { CompanyID = 1, Name = "New Employee22", StartWorking = DateTime.UtcNow }, new Employee() { CompanyID = 2, Name = "New Employee12" } }; await newEmployees.Select(x => new { companyid = x.CompanyID, x.Name, phone = "111-111-111", startWorking = x.StartWorking.HasValue ? x.StartWorking : DateTime.UtcNow, x.Age }).WriteToServerAsync(new BulkOptions(1000, 100, SqlBulkCopyOptions.Default, FieldsSelector.Source, false, true), connStr, "Employee"); // using option createTable and checkTableIfNotExistsBeforeCreation: destination table will be created // if it was not exists await newEmployees.Select(x => new { companyid = x.CompanyID, x.Name, phone = "222-222-222", startWorking = x.StartWorking.HasValue ? x.StartWorking : DateTime.UtcNow, x.Age }).WriteToServerAsync(new BulkOptions(createTable: true, checkTableIfNotExistsBeforeCreation: true), connStr, "Emp2"); }