Note, This only applies to making a module call OUT to a external web service:
With DotNetNuke your webservice needs a "proxy" and that proxy needs to be an assembly (a .dll) that is placed in the "/bin" directory of your DotNetNuke website.
To create this proxy, you open your DotNetNuke website in Visual Studio and you select Add then New Project. You then create a "ASP.NET Web Application".
In the is "ASP.NET Web Application", you create a normal "proxy" to your web service (using "Add Web Reference...").
You then compile the project and it will create an assembly in the "/bin" directory of your DotNetNuke website.
Note that you have not written any code, you just created a .dll that is nothing but a "shell".
You can now use that "web proxy shell" to connect to an external webservice using code such as:
// Reference to the web service
VacationRequestWorkflow_WebService wsVacationRequest = new VacationRequestWorkflow_WebService();
// Enable cookies
wsVacationRequest.CookieContainer = new System.Net.CookieContainer();
// Set the address to the web service
wsVacationRequest.Url = GetWebServiceURL();
// Call the method to start the workflow
Guid WorkflowInstanceID = wsVacationRequest.StartWorkflow(VacationRequest.RequestID,
VacationRequest.CheckDigit, GetLocalWebserviceURL(), PortalSettings.Email, UserInfo.Email);
in the code above, I created a "ASP.NET Web Application" called "VacationRequestWorkflow_WebService". I instantiate the class in my DotNetNuke module code and then I set the address of the web service with this line:
wsVacationRequest.Url = GetWebServiceURL();
I call the method on the web service with this line:
wsVacationRequest.StartWorkflow(VacationRequest.RequestID,
VacationRequest.CheckDigit, GetLocalWebserviceURL(), PortalSettings.Email, UserInfo.Email);
See this for a working example:
http://www.adefwebserver.com/DotNetNukeHELP/Workflow/VacationRequest2.htm