Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • Home
  • SEARCH
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 875841
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 15, 20262026-05-15T11:20:22+00:00 2026-05-15T11:20:22+00:00

I would like to know how to deal with nested transactions e.g. Between one

  • 0

I would like to know how to deal with nested transactions e.g. Between
one begin and commit, I have another begin and commit. The reason I am
asking you is because in my ApplicationServices project I have
services that depends on other services. And a method of a parent
service begins a transaction and depending upon some logic, it might
have to call one of the methods of the dependent child services, that
also in turn perform begin and commit. The Child services method are
also being used independently as well directly from the controllers,
therefore I have to use begin and commit in the child services.

So in short, basically I will end up having something like this

   using( Repository1.DbContext.BeginTransaction() )
   {
      try
      {
         .....
         .....
         using( Repository2.DbContext.BeginTransaction() )
         {
            try
            {
               .....
               .....
               Repository2.DbContext.CommitTransaction()
            }
            catch
            {
               Repository2.DbContext.RollBack();
               throw;
            }
        }
        Repository1.DbContext.CommitTransaction()
      }
      catch
      {
         Repository1.DbContext.RollBack();
         throw;
      }
   }

So there are nested begins and commits. I would like to know

-what would be the behavior, when the nested Repository2 gets
committed successfully but the parent Repository1 is rollbacked ?

How can I control this behavior in code e.g.

-if I don’t want to make child transaction part of the parent
transaction.
-how to figure out wether a transaction is already running before
creating a child transaction

or if there is another elegant solution to this problem?

Thanks
Nabeel

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-15T11:20:23+00:00Added an answer on May 15, 2026 at 11:20 am

    NHibernate does not support nested transactions. Is the DbContext is the same for both Repository1 and Repository2? If that’s the case then they can participate in the same transaction. If not, you’ll have to split the transactions into two methods or look at the System.Transactions namespace.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I would like to remove/delete a migration file. How would I go about doing
I would like to update my SQL lite database with the native update-method of
I would like to get a sum from a column, with and without a
(please excuse that I didn't use aliases). I would like my query output to
I want to have generalised email templates. Currently I have multiple email templates with
My question is about memory use and objects in actionscript 2. If I have
I know its probably possible, but is it practical and doable to try and
I'm trying to write test harness for part of my Android mapping application. I
I want the messagebox to only show if the number is equal to 0.
There doesn't seem to be any tried and true set of best practices to

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.