Cool. I get how that addresses point number 2...but how do I create a scope without a reference to the container?
On Sep 27, 5:22 pm, Krzysztof Koźmic <[email protected]> wrote: > Nope, and nope. > > By default scope is limited to the sub-call tree and it's limited to > your given thread and code invoked from within in. > > You can implement custom IScopeAccessor and provide any scope you like. > Scope is an abstract term here and it can be anything. > > Krzysztof > > On 28/09/2011 6:15 AM, Jeff N wrote: > > > > > > > > > Doesn't this require a direct reference to the container and thus lose > > a great deal of benefit? > > > And it seems like the scope is global to the container...which would > > prevent multiple scopes on different threads, no? > > > On Sep 27, 3:47 pm, Mauricio Scheffer<[email protected]> > > wrote: > >> Sounds like the scoped lifestyle in Windsor > >> 3:http://docs.castleproject.org/Windsor.Whats-New-In-Windsor-3.ashx#Add... > > >> Or the contextual lifestyle in Windsor > >> 2.x:http://blog.schuager.com/2010/11/contextual-lifestyle-reloaded.htmlht... > > >> -- > >> Mauricio > > >> On Tue, Sep 27, 2011 at 4:35 PM, Jeff N<[email protected]> wrote: > >>> Basically as soon as I started using Windsor, I wrote custom > >>> LifestyleManagers for DisposableSingleton and DisposablePerThread > >>> lifestyles, because the default Singleton and PerThread Lifestyles do > >>> not allow releasing. > >>> Why do I want this? Take the following scenario (note that I'm not > >>> actually using container.Resolve and Release in the real world). > >>> var unitOfWork = container.Resolve<IUnitOfWork>(); > >>> DoSomeWork(); > >>> DoSomeMoreWork(); > >>> container.Release(unitOfWork); > >>> public static void DoSomeWork() > >>> { > >>> var repository = container.Resolve<IRepository1>(); // > >>> IRepository1 has a constructor that takes an IUnitOfWork...and we want > >>> it to get the IUnitOfWork in context. > >>> } > >>> public static void DoSomeMoreWork() > >>> { > >>> var repository = container.Resolve<IRepository2>(); // > >>> IRepository2 has a constructor that takes an IUnitOfWork...and we want > >>> it to get the IUnitOfWork in context. > >>> } > >>> So, am I doing something bad here or is there a reason Windsor > >>> shouldn't support this scenario by default? > >>> -- > >>> You received this message because you are subscribed to the Google Groups > >>> "Castle Project Users" group. > >>> To post to this group, send email to [email protected] > >>> . > >>> To unsubscribe from this group, send email to > >>> [email protected]. > >>> For more options, visit this group at > >>>http://groups.google.com/group/castle-project-users?hl=en. -- You received this message because you are subscribed to the Google Groups "Castle Project Users" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/castle-project-users?hl=en.
