J'essaie l'insertion/la mise à jour par lots de SqlDataAdapter. Lorsque je mets UpdateBatchSize = 1, cela fonctionne, mais le mettre à 2 donne l'exception "Nom du paramètre spécifié 'Id' n'est pas valide.".SqlDataAdapter donne une erreur non valide au nom du paramètre lors de la définition de la taille de lot
using (var sqlDataAdapter = new SqlDataAdapter
{
UpdateBatchSize = 2
})
using (var connection = new SqlConnection("Data Source=server;Initial Catalog=DB;Integrated Security=True"))
using (var command = new SqlCommand("INSERT INTO Test (Id) VALUES (@Id)", connection)
{
UpdatedRowSource = UpdateRowSource.None
})
{
command.Parameters.Add("Id", SqlDbType.Int).SourceColumn = "Id";
sqlDataAdapter.InsertCommand = command;
var table = new DataTable("Test");
table.Columns.Add("Id");
table.Rows.Add(1);
table.Rows.Add(2);
sqlDataAdapter.Update(table);
}