[Source: http://geekswithblogs.net/EltonStoneman]
If you're hosting WCF services in IIS and try accessing the WSDL using ServiceDescriptionImporter.Import, you'll get an error saying Unable to import binding BasicHttpBinding_IXyzService…
WCF separates out its schemas into logical components, which ServiceDescriptionImporter and other clients (including the ESBSimpleSamples ServiceClient generator) can't work with, as they're expecting a single flat WSDL.
Christian Weyer from Thinktecture has a solution here: Improving WCF Interoperability: Flattening your WSDL. If you download and build his sample project, copy Thinktecture.ServiceModel.Extensions.Description.dll to your service bin folder and amend your .svc description to use the Thinktecture factory:
<% @ServiceHost Language=C# Service="Xyz.XyzService" Factory="Thinktecture.ServiceModel.Extensions.Description.FlatWsdlServiceHostFactory " %>
- this will return a flattened WSDL, so tools expecting one file will work correctly.