Sobes.tech
Junior — Middle

Чӣ гуна метавон сатҳи ҷудошавии транзаксияҳоро дар базаи додаҳо танзим кард?

sobes.tech AI

Ҷавоб аз AI

Дар C# сатҳи изолатсияи транзаксияҳоро метавон ҳангоми эҷоди объект TransactionScope ё ҳангоми истифодаи SqlTransaction танзим кард.

Масалан, бо TransactionScope, сатҳи изолатсияро тавассути параметри TransactionOptions муайян кардан мумкин аст:

using System.Transactions;

var options = new TransactionOptions
{
    IsolationLevel = IsolationLevel.Serializable,
    Timeout = TransactionManager.DefaultTimeout
};

using (var scope = new TransactionScope(TransactionScopeOption.Required, options))
{
    // амалиётҳо бо базаи додаҳо
    scope.Complete();
}

Ҳангоми истифодаи SqlTransaction, сатҳи изолатсия дар оғози транзаксия муайян мешавад:

using (var connection = new SqlConnection(connectionString))
{
    connection.Open();
    var transaction = connection.BeginTransaction(IsolationLevel.ReadCommitted);
    try
    {
        // амалиётҳо бо базаи додаҳо
        transaction.Commit();
    }
    catch
    {
        transaction.Rollback();
        throw;
    }
}

Бинобар ин, сатҳи изолатсия назорати намоиши тағирот байни транзаксияҳоро таъмин мекунад ва ба рафтори бастаҳо таъсир мерасонад.