SharePoint 2010 WCF HelloWorld Service and InfoPath
/Was looking for a quick tutorial for creating a Custom WCF Service for SharePoint 2010. For some reason couldn’t find one, so I sat down and try it out and decide to write out a few simple steps.
Use CKSDev
http://cksdev.codeplex.com/ version 1.2 included new Visual Studio Item templates for creating WCF services and makes this whole process a breeze. Thanks to Charlie Holland’s hardwork.
Build Solution
- Create New Blank VS.NET SharePoint Solution “HelloWorldWCF”
 - WCF Service has to be a Farm Solution.
 - Add New Item, and select WCF Service (CKSDev)
 - The created Service includes a stub method that returns a string.     
[BasicHttpBindingServiceMetadataExchangeEndpoint]
[AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Required)]
public class HelloWorldWCFService : IHelloWorldWCFService
{
// To test this service, use the Visual Studio WCF Test client
// set the endpoint to http://<Your server name>/_vti_bin/HelloWorldWCF/HelloWorldWCFService.svc/mex
public string HelloWorld()
{
return "Hello World from WCF and SharePoint 2010";
}
} - Compile solution and Deploy to server
 
Verify Service
- The service is deployed to /_vti_bin/HelloWorldWCF/HelloWorldWCFService.svc
 - The endpoint is at http://server/_vti_bin/HelloWorldWCF/HelloWorldWCFService.svc/mex
 - Browse it with your browser you should see:
 
Connect Via InfoPath
- Create an External Connection
 - Select SOAP Service, use the /mex endpoint
 - You may be asked to authenticate with the service
 - Select the method      
 - Cache, and Retrieve when form load as necessary.     
 - Bind the result of the web service to a textbox