0
votes

I have been working on WCF Services with Castle Windsor and I could register after setup the container like this:

IWindsorContainer container = new WindsorContainer();

container.AddFacility<WcfFacility>().Register(
    Component.For<IActivityLogsRepository>().ImplementedBy<ActivityLogsRepository>(),
    Component.For<IActivityLogsService>().ImplementedBy<ActivityLogsService>()
    .Named("Company.ServiceImplementation.ActivityLogsService"),

but my problem begins with the use of CallbackContract as is described here http://msdn.microsoft.com/en-us/library/ms752254(v=vs.100).aspx

from the Castle documentation I found this http://docs.castleproject.org/Windsor.WCF-Facility-Lifestyles.ashx

and I did something like this

Component.For<ISampleService>().ImplementedBy<SampleService>()
    .LifeStyle.PerWcfSession(),

my server config file is

<bindings>
  <basicHttpBinding>
    <binding name="LargeHttpBinding" closeTimeout="00:10:00" openTimeout="00:10:00"
      sendTimeout="00:10:00" maxBufferSize="2147483647" maxBufferPoolSize="2147483647"
      maxReceivedMessageSize="2147483647">
      <readerQuotas maxDepth="2147483647" maxStringContentLength="2147483647"
        maxArrayLength="2147483647" maxBytesPerRead="2147483647" maxNameTableCharCount="2147483647" />
    </binding>
  </basicHttpBinding>
  <netTcpBinding>
    <binding name="LargeNetTcpBinding" maxBufferPoolSize="5242880"
      maxBufferSize="5242880" maxReceivedMessageSize="5242880" />
  </netTcpBinding>
</bindings>
<services>
  <service behaviorConfiguration="LargeBehavior" name="MyCompany.ServiceImplementation.SampleService"><endpoint address="net.tcp://localhost:808/MyCompany.WcfServices/SampleService.svc" binding="netTcpBinding" bindingConfiguration="LargeNetTcpBinding"
      name="netTcp" contract="MyCompany.ServiceContract.ISampleService" />
    <endpoint address="mex" binding="mexTcpBinding" bindingConfiguration=""
      name="Mex" contract="IMetadataExchange" />
    <host>
      <baseAddresses>
        <add baseAddress="net.tcp://localhost:808/MyCompany.WcfServices/" />
      </baseAddresses>
    </host>

Somebody knows if it's possible to setup Castle Windsor Facility with Callbacks and if so, how it is possible to achieve it

thanks

1

1 Answers

1
votes

I do not think (99% sure) this is currently supported.