Introduction
In the previous chapters, we learnt how to extend the SharePoint server functionality by creating event receivers, web parts, workflows, content types, and so on. We also wrote client applications (that are not running on the same machine as the SharePoint server) that can use SharePoint as the data source. In order to use SharePoint as the data source, we made use of web services that SharePoint provides out-of-the-box. We also learnt how to create custom web services if out-of-the-box web service did not meet the business requirements.
Since out-of-the-box web services does not provide the full functionality that the server model exposes, developers always end up creating custom web services for use with client applications. But there are situations where deploying custom web services may not be feasible. For example, if your company is hosting SharePoint solutions in a cloud environment where access to the root folder is not permitted. In such cases, developing client applications...