Hi Artur,

Yes we're aware that the docs are de facto non existent, and we're trying to improve that
http://stw.castleproject.org/Windsor.WCF-Integration-Facility.ashx
It's an open wiki, so if you could find a moment to share some of your knowledge that would be great.

Back to the issue at hand.
One powerful capability WCF Facility gives you on the client are non-blocking async calls (without the "Add Service Reference" codegen crap). Also if you don't configure the client proxies in any additional way and just do

Component.For<IMyWcfService>()
                .ActAs( DefaultClientModel.On(
        
WcfEndpoint.FromConfiguration( "name_of_configuration_in_web_config" )
        ) )

you can skip that entirely. Windsor will figure it out.
My guess with your problem is that in your scenario the client proxy is a singleton, whereas I believe it should be transient. I don't really know how WCF normally reacts when you're concurrently calling single WCF proxy, but it doesn't feel right...

HTH,
Krzysztof

On 2010-06-01 03:50, Artur Dorochowicz wrote:
Hello,

Due to the fact that WCF facility has rather limited documentation
available, I'd like to ask here for some help about its usage on the
client side.

My scenario is an ASP.NET MVC web application that uses a WCF service
for which I have the service contract.
Controller factory is based on Windsor - controllers are resolved and
released by Windsor.
I have the configuration in web.config and configure the service like
this:

AddFacility<WcfFacility>();
Register(
        Component.For<IMyWcfService>()
                .ActAs( DefaultClientModel.On(
        
WcfEndpoint.FromConfiguration( "name_of_configuration_in_web_config" )
        ) ) );

Is it correct? And what benefits does the WCF facility offer me on the
client side?

This configuration seems to work correctly as long as the resolved
service client proxy is a dependency of transient components. But when
it becomes a dependency of component with PerWebRequest lifestyle, the
proxy seems to never be released, and after a couple of web requests I
reach a limit of connections/clients on the service side and I start
getting timeouts on calls to the service.
Is such scenario supported? Am I doing something wrong?

Best regards

Artur Dorochowicz


--
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