برای اجرای تراکنش در سیستمهای با کاربر و حجم داده زیاد بهتر ه از امکانات تراکنش موجود در ORMها استفاده کنید. برای مثال در Entity Framework میتونید از DBTransactionها استفاده کنید یا در NHibernate از تراکنش موجود در Session استفاده کنید. برای مثال در CodeFirst
البته در زمان مناسب در صورت نیاز یک پست رو به این مورد اختصاص خواهم داد.
public void Save( TEntity entity ) { DbTransaction transaction = null; try { transaction = this.Database.Connection.BeginTransaction(); //عملیات مورد نظر transaction.Commit(); } catch { transaction.Rollback(); } finally { transaction.Dispose(); } }