Junior — Middle
¿Cómo se puede configurar el nivel de aislamiento de las transacciones en la base de datos?
sobes.tech AI
Respuesta de la IA
En C#, el nivel de aislamiento de las transacciones se puede configurar al crear el objeto TransactionScope o al usar SqlTransaction.
Por ejemplo, con TransactionScope, se puede especificar el nivel de aislamiento a través del parámetro TransactionOptions:
using System.Transactions;
var options = new TransactionOptions
{
IsolationLevel = IsolationLevel.Serializable,
Timeout = TransactionManager.DefaultTimeout
};
using (var scope = new TransactionScope(TransactionScopeOption.Required, options))
{
// operaciones con la base de datos
scope.Complete();
}
Al usar SqlTransaction, el nivel de aislamiento se establece al comenzar la transacción:
using (var connection = new SqlConnection(connectionString))
{
connection.Open();
var transaction = connection.BeginTransaction(IsolationLevel.ReadCommitted);
try
{
// operaciones con la base de datos
transaction.Commit();
}
catch
{
transaction.Rollback();
throw;
}
}
De esta manera, el nivel de aislamiento controla la visibilidad de los cambios entre transacciones y afecta el comportamiento de los bloqueos.