public void Realiza_BulkInsert_Sem_DataAnnotations() { // cria lista de itens a serem incluidos. var listaEntidades = (from i in Enumerable.Range(1, 10000) select new Modelo.EntidadeTeste() { Id = i + 10000, Nome = String.Format("Nome: {0}", i), Idade = i, TipoPessoa = TipoPessoa.Juridica, }).ToList(); using (var uow = new MainUnitOfWork(TempDatabaseConnectionStringName)) { // Cria BD. if (!uow.Database.Exists()) { uow.Database.Initialize(force: false); } var repo = new Repository <EntidadeTeste>(uow); var qtdOriginalDeRegistrosNaTabela = repo.Contar(); // realiza bulk insert. var connectionString = System.Configuration.ConfigurationManager.ConnectionStrings[TempDatabaseConnectionStringName].ConnectionString; var bulkobj = new SqlBulkCopy <EntidadeTeste>(); bulkobj.NomeTabela = "TabelaEntidadesTeste"; bulkobj.MapColumn(p => p.Nome, "NomeEntidade"); bulkobj.MapColumn(p => p.TipoPessoa, "TipoDePessoa"); bulkobj.Ignore(p => p.Idade); bulkobj.BulkInsert(connectionString, listaEntidades); // verifica a quantidade de itens inseridos var qtdEntidadesCadastradas = repo.Contar(); Assert.IsTrue(qtdEntidadesCadastradas == listaEntidades.Count() + qtdOriginalDeRegistrosNaTabela, "Não adicionou os registros na tabela."); } }
public void Realiza_BulkInsert_Sem_DataAnnotations() { // cria lista de itens a serem incluidos. var listaEntidades = (from i in Enumerable.Range(1, 10000) select new Modelo.EntidadeTeste() { Id = i + 10000, Nome = String.Format("Nome: {0}", i), Idade = i, TipoPessoa = TipoPessoa.Juridica, }).ToList(); using (var uow = new MainUnitOfWork(TempDatabaseConnectionStringName)) { // Cria BD. if (!uow.Database.Exists()) uow.Database.Initialize(force: false); var repo = new Repository<EntidadeTeste>(uow); var qtdOriginalDeRegistrosNaTabela = repo.Contar(); // realiza bulk insert. var connectionString = System.Configuration.ConfigurationManager.ConnectionStrings[TempDatabaseConnectionStringName].ConnectionString; var bulkobj = new SqlBulkCopy<EntidadeTeste>(); bulkobj.NomeTabela = "TabelaEntidadesTeste"; bulkobj.MapColumn(p => p.Nome, "NomeEntidade"); bulkobj.MapColumn(p => p.TipoPessoa, "TipoDePessoa"); bulkobj.Ignore(p => p.Idade); bulkobj.BulkInsert(connectionString, listaEntidades); // verifica a quantidade de itens inseridos var qtdEntidadesCadastradas = repo.Contar(); Assert.IsTrue(qtdEntidadesCadastradas == listaEntidades.Count() + qtdOriginalDeRegistrosNaTabela, "Não adicionou os registros na tabela."); } }