If the Web Service is create with the Service name has a space in the name, in the WSDL file the service. The WSDL create in Visual Studio will contain a service name that has the spaces changed to _x0020_. So "My Web Service" will be "My_x0020_Web_x0020_Service". If the Web Service is called from C# then this is not a problem.
However in the SSIS package Web Service Task the service name is shown as "My_x0020_Web_x0020_Service". You then get a list of the methods, selecting one brings up the list of parameters. Setting all these correctly and clicking OK.
Running the package gives an error saying 'The given service is not currently available.'
If the service name is changed to have no spaces, the SSIS package runs fine.
Checking the IIS logs and the SSIS Package isn't calling the Web Method.
If I download the WSDL to a file and then search and replace all the _x0020_ with empty string and save the WSDL file. Then edit the SSIS package, then the SSIS will call the Web Service correctly. It will correctly call web service which don't have spaces in the name.