Web Services .Net Thursday, February 22, 2007
How a WebService is processed in .NET?
How a C# WebService is getting executed in .NET?
The Answer is :
First Client(end user) will request the Web Service in Form of (URI).
Then the DNS will resolve the URI and identifies the ip and route the HTTP request to the corresponding web server (which has the C# WebService ).
Then IIS which is responsible to hold the WebServices and web application identifies that the application is a .NET and map the ASP.NET ISAPI to receive the request.
(Note : IIS can find that a ISAPI is ASP.NET but it cant find it is a WebService or WebApplication in .NET)
Now, the ASP.NET ISAPI will identify that this is a WebService in .NET and forward the request again to .NET HTTPRuntime.
(This process will change unmanage code to manage code)
HTTPRunTime will also can identify a request as an application .
So, as HTTPRunTime identifies that the request is a WebService .NET request , this delegate the SOAP request(converted in previous step) to .Net WebServiceHandlerFactory.
The .Net WebServiceHandlerFactory deserialize the SOAP payload and executes.
(Payload is networking term which contains the actual body of the message) and also execute the request for the WebService.
Again, to display the Response to client as HTML, HTTPRunTime takes the result and serialize to SOAP message and add as SOAP payload of HTTPRunTime.
When HTTPRunTime delegate the response, .NET ISAPI will take and send back to the IIS which in turn returns the response and the Client gets SOAP Message.
Hence the receiving end(Consumer application which grabs the .NET WebService has to deform it and display the HTML response to user.
posted by TechieLion @ 1:02 AM,