Es que a mi me habían enseñado que una transacción eran dos o más operaciones que debían hacerse juntas de manera que si en algún momento fallaba la aplicación, nunca se quedara a medias.
En todo caso, para hacer un commit, requiere que declare una transaction y lo he hecho y no me ha funcionado tmp. Estoy desesperada :'(
Aquí pego el código por si JuanK o alguien viera algún error (Me sale que hay un fallo en la transacción):
foreach (DataGridViewRow dgvr in ordenesDataGridView.Rows)
{
SqlCommand command = ordenesTableAdapter.Connection.CreateCommand();
SqlTransaction transaction;
ordenesTableAdapter.Connection.Open();
transaction = ordenesTableAdapter.Connection.BeginTransaction();
command.Connection = ordenesTableAdapter.Connection;
command.Transaction = transaction;
try
{
this.ordenesTableAdapter.Insert(1, "Calibrar");
transaction.Commit();
MessageBox.Show("Insert OK");
}
catch (Exception ex)
{
MessageBox.Show("Fallo en la transacción.");
try
{
transaction.Rollback();
}
catch (Exception ex2)
{
MessageBox.Show("Fallo en rollback");
}
}
ordenesTableAdapter.Connection.Close();
}