I am currently using EntityFramework 4.3.1 with CodeFirst. I need to be able to handle working with multiple DbContext objects and manage the transactions manually. Each DbContext deals with it's own database, not sharing one. I also need to avoid DTC. I have my own custom object that holds an instance of each DbContext for each database. When I call SaveChanges on my custom object I want to open transaction1 for the DbContext1 and call it's save changes and leave the transaction1 uncommitted. Then open transaction2 for the DbContext2 and call the save changes and leave the transaction2 uncommitted. If each DbContext.SaveChanges() were both successful, then commit both transaction1 and transaction2 manually. I have found multiple articles about using TransactionScope, but that elevates it to a DTC, which causes issues with my customers, because it wants to use the same transaction for both connections. I have not found a way to manually create my own transactions that are completely independent of each other and handle committing them myself.
Thanks!