Click here to Skip to main content
11,640,125 members (69,188 online)
Rate this: bad
good
Please Sign up or sign in to vote.
See more: ASP.NET
i am using data access layer for my project
now i am inserting records in three tables using the same function so how can i use transaction for any failure of any table
my code like...

int check2 = du.ExecuteSqlSP(objAdTask, spProjectTask);
 
            int check = du.ExecuteSqlSP(objaddSubAdmin, spAdmin);
            int check1 = du.ExecuteSqlSP(objAdProject, spAdminProject);

where obj.. are parameters and sp.. is my storedProcedure name
how to use transaction for above code
Posted 31-Jan-13 19:04pm
Edited 31-Jan-13 19:43pm
v2

1 solution

Rate this: bad
good
Please Sign up or sign in to vote.

Solution 1

There is an elegant way to do this.
Use the transaction for that. start a transaction, put your stored procedures call in try catch block. After executing the stored procedures commit the transaction. else rollback in catch block.

So it would be something like
IDbConnection conn = //(Create your connecttion object here)
IDbTransaction transaction = conn.BeginTransaction();
try{
       //(Execute you procedures here)
        transaction.Commit();
}
 catch
 {
  // Roll back the transaction. 
  transaction.Rollback();
  throw; 
 }
  Permalink  

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

  Print Answers RSS
0 Suvendu Shekhar Giri 225
1 F-ES Sitecore 170
2 CPallini 167
3 Sergey Alexandrovich Kryukov 144
4 himanshu agarwal 142
0 OriginalGriff 9,081
1 Sergey Alexandrovich Kryukov 8,847
2 Mika Wendelius 7,027
3 Suvendu Shekhar Giri 2,650
4 F-ES Sitecore 2,558


Advertise | Privacy | Mobile
Web03 | 2.8.150731.1 | Last Updated 1 Feb 2013
Copyright © CodeProject, 1999-2015
All Rights Reserved. Terms of Service
Layout: fixed | fluid

CodeProject, 503-250 Ferrand Drive Toronto Ontario, M3C 3G8 Canada +1 416-849-8900 x 100