http://tunatoksoz.com/post/Castle-ServiceIdResolver.aspx <http://tunatoksoz.com/post/Castle-ServiceIdResolver.aspx>I thought it is better because you have more control over what's going on there
Tuna Toksöz Eternal sunshine of the open source mind. http://devlicio.us/blogs/tuna_toksoz http://tunatoksoz.com http://twitter.com/tehlike On Fri, Sep 4, 2009 at 11:09 AM, DannyT <[email protected]> wrote: > Thanks we achieved it (eventually) using the Factory Support Facility and > fluent interface like so: > > WindsorContainer.AddFacility<FactorySupportFacility>(); > WindsorContainer.Kernel.Register( > Component.For<ISession>() > .UsingFactory((ISessionManager sm) => sm.OpenSession())) > > Very simple in the end, but as ever "easy when you know how" > > Out of interest, can you explain why the SubDependencyResolver is a better > approach and do you have any references that explain the parameters passed > to the CanResolve and Resolve methods? > > Cheers! > > 2009/9/3 Tuna Toksoz <[email protected]> > > Better idea! >> >> Tuna Toksöz >> Eternal sunshine of the open source mind. >> >> http://devlicio.us/blogs/tuna_toksoz >> http://tunatoksoz.com >> http://twitter.com/tehlike >> >> >> >> >> On Thu, Sep 3, 2009 at 8:27 PM, Jason Meckley <[email protected]>wrote: >> >>> >>> or your own implementation of SubDependencyResolver >>> >>> class SessionResolver : ISubDependencyResolver >>> { >>> private readonly IKernel kernel; >>> >>> public SessionResolver(IKernel kernel) >>> { >>> this.kernel = kernel; >>> } >>> >>> public object Resolve(...) >>> { >>> return kernel.Resolve<ISessionManager>().OpenSession(); >>> } >>> >>> public bool CanResolve(...) >>> { >>> return typeof(ISession).IsAssignableFrom >>> (dependency.TargetType)); >>> } >>> } >>> >>> On Sep 3, 8:52 am, Tuna Toksoz <[email protected]> wrote: >>> > using Factory Support facility. >>> > >>> > Tuna Toksöz >>> > Eternal sunshine of the open source mind. >>> > >>> > >>> http://devlicio.us/blogs/tuna_toksozhttp://tunatoksoz.comhttp://twitter.com/tehlike >>> > >>> > 2009/9/3 DannyT <[email protected]> >>> > >>> > > I'm trying to use Rhino.Security which has a dependency on ISession. >>> > > However when using NHibernateFacility we only have an ISessionManager >>> > > registered in the container. Can anyone suggest how to get ISession >>> > > registered in the container from the ISessionManager? Or >>> alternatively >>> > > somehow tell ISession to reference ISessionManager.OpenSession()? >>> >>> >> >> >> > > > -- > http://danny-t.co.uk > > > > > --~--~---------~--~----~------------~-------~--~----~ 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 -~----------~----~----~----~------~----~------~--~---
