The issue is that i want to control a service based on container. This will
also provide decupeling if i would like to put 2 services in 1 and other
servies in another container. For logic simplicity as well

On 16 Sep 2010 01:49, "Krzysztof Koźmic" <[email protected]> wrote:
> also, can you provide a failing minimal test?
>
> thanks,
> Krzysztof
>
> W dniu 16 września 2010 09:49 użytkownik Krzysztof Koźmic <
> [email protected]> napisał:
>
>> Why do you want to use subcontainers for that?
>>
>> 2010/9/16 barroei <[email protected]>
>>
>> hey,
>>>
>>> i am trying to implement a single Application Pool that will include a
>>> Container
>>> in this container i would like to have a subContainer per every
>>> WCFComponent.
>>> meaning:
>>>
>>>
>>> Service1.svc will be in Child1
>>> Service2.svc will be in Child2
>>>
>>> Child1 and Child2 will be in Parent
>>>
>>> can this be done?
>>> cause from my testing once i register 2 differenet Services one on
>>> each Container
>>> the first one registerd doesnt work.
>>>
>>> here is my code:
>>>
>>> public class ContainerBuilder
>>> {
>>> static WindsorContainer parent = new WindsorContainer();
>>> static WindsorContainer child;
>>> static WindsorContainer child2;
>>>
>>>
>>> public static IWindsorContainer Build()
>>> {
>>> var debug = new ServiceDebugBehavior
>>> {
>>> IncludeExceptionDetailInFaults = true
>>> };
>>>
>>> var metadata = new ServiceMetadataBehavior
>>> {
>>> HttpGetEnabled = true
>>> };
>>>
>>> parent.AddFacility<WcfFacility>();
>>> child = new WindsorContainer();
>>> child
>>> .Register(
>>> Component.For<IServiceBehavior>().Instance(debug),
>>>
>>> Component.For<IServiceBehavior>().Instance(metadata),
>>>
>>>
>>>
Component.For<IPostAtomFeedMapper>().ImplementedBy<DefaultPostAtomFeedMapper>(),
>>> Component
>>> .For<IService1>()
>>> .ImplementedBy<Service1>()
>>> .Named("blogService2")
>>> .LifeStyle.Transient
>>> .ActAs(new DefaultServiceModel().Hosted()
>>> .AddBaseAddresses("http://localhost:51223/
>>> Service1.svc")),
>>>
>>>
>>>
Component.For<ILogger>().ImplementedBy<DefaultLogger>().LifeStyle.Transient
>>> );
>>>
>>> child2 = new WindsorContainer();
>>> child2
>>> .Register(
>>> Component.For<IServiceBehavior>().Instance(metadata),
>>> Component.For<IServiceBehavior>().Instance(debug),
>>>
>>>
>>>
Component.For<IPostAtomFeedMapper>().ImplementedBy<DefaultPostAtomFeedMapper>(),
>>> Component
>>> .For<IService2>()
>>> .ImplementedBy<Service2>()
>>> .Named("blogService")
>>> .LifeStyle.Transient
>>> .ActAs(new DefaultServiceModel().Hosted()
>>> .AddBaseAddresses("http://localhost:51223/
>>> Service2.svc")),
>>>
>>>
>>>
Component.For<ILogger>().ImplementedBy<DefaultLogger>().LifeStyle.Transient
>>> );
>>>
>>> parent.AddChildContainer(child);
>>> parent.AddChildContainer(child2);
>>>
>>> return parent;
>>> }
>>> }
>>>
>>> --
>>> 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]<castle-project-users%[email protected]>
<castle-project-users%[email protected]<castle-project-users%[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]<castle-project-users%[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.

Reply via email to