which LifeTime Manager when using [TransactionScopeRequired=true]

Apr 12, 2013 at 1:25 PM

I actually have a WCF service in PerSession Mode and use [TransactionScopeRequired=true] for my methods in this service.

I use Unity.WCF to inject an instance of an EntityFramework DbContext.
I Use the HierarchicalLifetimeManager as recommended in the docuementation.

Problem : For the same proxy, each time I invoke a method marked with [TransactionScopeRequired=true] Unity.WCF inject a new instance of the EF Context.
If by the contrary I invoke a method with no transactionscope attribute, the same instance of EF context is shared which is the awaited behavior of the HierarchicalLifeCycleManager

What kind of LifeCycleManager can I use to avoid that and keep the same instance of my context during all the session.