Understanding Web Services
Web services is a broad term that represents the technology to transmit data over Internet or Intranet. This data can be accessed programmatically using open standards such as eXtensible Markup Language (XML), Simple Object Access Protocol (SOAP), Web Services Description Language (WSDL), and Universal Discovery Description Integration (UDDI).
The primary advantage of Web services is that it allows applications written in different programming languages or platforms to communicate with each other. This advantage greatly helps developers by reducing the development time and making the connectivity easier. XML is the format that structures data in a series of hierarchical tags. XML is used in Web services because it is human and machine readable and is accepted by all platforms.
SOAP is a standard communication protocol to transport the XML data over networks such as Internet or Intranet. It is the best protocol to expose the web services functionality. SOAP also allows a web service to be routed to the proper location over the network. WSDL is the detailed description of the web service in an XML document. This description consists of details such as where to find the web service, the methods and properties that web service supports, the data types, and the protocols used to communicate with the web service. The web services are registered in a common directory so that the users can access it easily. UDDI is a directory to publish or discover web services.
With regard to web service you can either consume an existing web service or expose a new web service. ASP.NET Web services are source files with .asmx extensions in ASP.NET application. ASP.NET Web services, like ASP.NET web forms gets compiled when they are requested for the first time and the code for the web service resides in a pre-compiled .NET Assembly.
You can also test a web service. When navigating to a web service in a browser, you can check whether all the public methods of the web service are listed on the page. While executing the web service you can test the data integrity of the web service. In addition, you can view SOAP, HTTPGET, HTTPPOST requests and responses. This makes programmatic errors very obvious and thus easy to debug.