The company I work for does work with outside vendors for our software. I have been given the task of creating my first windows service to communicate with the vendors web service. The vendor gave us a copy of their WSDL and 39 XSD files. I convert the XSD files to class files with no problems. However, when I try to convert the WSDL, I get the following errors:
When using wsdl.exe
Error: Unable to import binding 'BasicHttpBinding_ITrakManService' from namespace 'http://tempuri.org/'. - Unable to import operation 'AddRedactedDocument'. - The element 'http://tempuri.org/:AddRedactedDocument' is missing.
When using svcutil.exe
Error: Cannot import wsdl:portType Detail: An exception was thrown while running a WSDL import extension: System.ServiceModel.Description.DataContractSerializerMessageContractImporter Error: Schema with target namespace 'http://tempuri.org/' could not be found.
XPath to Error Source:
//wsdl:definitions[@targetNamespace='http://tempuri.org']/wsdl:portType[@name='ITrakManService'] Error: Cannot import wsdl:binding Detail: There was an error importing a wsdl:portType that the wsdl:binding is dependent on. XPath to wsdl:portType: //wsdl:definitions[@targetNamespace='http://tempuri.org/']/wsdl:portType[@name='ITrakManService']
XPath to Error Source:
//wsdl:definitions[@targetNamespace='http://tempuri.org/']/wsdl:binding[@name='BasicHttpBinding_ITrakManService']
Generating files... Warning: No code was generated. If you were trying to generate a client, this could be because the metadata documents did not contain any valid contracts or services or because all contracts/services were discovered to exist in reference assemblies. Verify that you passed all the metadata documents to the tool.
I saw a few people reference changing the imports section of the wsdl to includes, but none of the imports are referencing explicit XSD's, for reference this is the import section.
-<wsdl:types>
-<xsd:schema targetNamespace="http://tempuri.org/Imports">
<xsd:import namespace="http://tempuri.org/" schemaLocation="http://vcp01xred-grd.clerkdev.clerk.local:8090/TrakManWebService.svc?xsd=xsd0"/>
<xsd:import namespace="http://schemas.microsoft.com/2003/10/Serialization/" schemaLocation="http://vcp01xred-grd.clerkdev.clerk.local:8090/TrakManWebService.svc?xsd=xsd1"/>
<xsd:import namespace="http://schemas.datacontract.org/2004/07/TrakManBusiness" schemaLocation="http://vcp01xred-grd.clerkdev.clerk.local:8090/TrakManWebService.svc?xsd=xsd2"/>
<xsd:import namespace="http://schemas.microsoft.com/2003/10/Serialization/Arrays" schemaLocation="http://vcp01xred-grd.clerkdev.clerk.local:8090/TrakManWebService.svc?xsd=xsd3"/>
</xsd:schema>
</wsdl:types>
Sorry if this is a stupid question for you WSDL experts, this is my attempt at doing one. I also have tried this with the XSD files in the same directory as the WSDL and the errors were the same.