error resolving WCF service using WCF facility

597 Views Asked by At

I keep getting the following error:

Method not found: 'Void Castle.MicroKernel.ComponentActivator.ComponentActivatorException..ctor

this is from the following initialization code in global.asax:

    private void ConfigureContainer()
    {
        _container = new WindsorContainer();

        _container.Register(Component.For<IWindsorContainer>().Instance(_container))
            .AddFacility<WcfFacility>()
            .Register(Component.For<ISonatribeCommandService>()
                          .AsWcfClient(DefaultClientModel
                          .On(WcfEndpoint.FromConfiguration("commandServiceClient")))
                          .LifestyleTransient())
            .Install(FromAssembly.InDirectory(new AssemblyFilter(HttpRuntime.BinDirectory, "Sonatribe*.dll")));

    }

my system.servicemodel section in web.config looks like:

  <system.serviceModel>
    <serviceHostingEnvironment aspNetCompatibilityEnabled="true" />
    <client>
      <endpoint address="http://****.com/SonatribeCommandService.svc" binding="basicHttpBinding" contract="CommandService.ISonatribeCommandService" name="commandServiceClient"></endpoint>
    </client>
  </system.serviceModel>

The service works fine when using the add web reference method.

UPDATE:

I also tried doing the config method too:

<configuration>
  <components>
    <component 
      id="commandService" 
      type="CommandService.SonatribeCommandService, CommandService"
      wcfEndpointConfiguration="commandServiceClient" />
  </components>
</configuration>

Any ideas?

1

There are 1 best solutions below

10
On BEST ANSWER

It looks like you're using incompatible versions of Windsor and the facility. Make sure you're using version of WCF Facility that was meant to be used with the version of Windsor you have.