'S#arp Architecture WCF Gotcha'
We’ve recently adopted the excellent S#arp Architecture for our projects. I highly recommend taking a look at the project site.
On Friday I created a simple WCF service using S#arp’s Northwind sample site for reference.
Using WcfTestClient I located my service and attempted to test one of the methods, only to get the following error.
WARNING
Could not load file or assembly ‘Castle.Windsor, Version=1.0.3.0, Culture=neutral, PublicKeyToken=407dd0808d44fbdc’ or one of its dependencies. The system cannot find the file specified._
I looked for the usual suspects (rogue entries in the GAC, searching the c: drive for instances of Castle.Windsor) but couldn’t find the problem.
Eventually I discovered this code in the sample site’s web.config.
<runtime> <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> <dependentAssembly> <assemblyIdentity name="Castle.Windsor" publicKeyToken="407dd0808d44fbdc" culture="neutral"/> <bindingRedirect oldVersion="0.0.0.0-65535.65535.65535.65535" newVersion="2.0.0.0"/> </dependentAssembly> </assemblyBinding></runtime>
Copying this to the web.config for my WCF service solved the problem.