What is Web Service ?
A Web service is a software system identified by a URI, whose
public interfaces and bindings are defined and described using XML ( Learn Details of XML )
. Its
definition can be discovered by other software systems.These systems may then
interact with the Web service in a manner prescribed by its definition, using
XML based messages conveyed by internet protocols
Web service architecture picture is shown below:
Web Services are platform independent.
Service written in any language can communicate with service of other
languages. Web service support the following transporting protocol
Internet Protocol,HTTP, STMP. Web service uses XML as common language ( Learn Details of XML ) to
communicate over network between two different application. As a result, the
set of data types Web Services can use is limited to the set of data types
recognized by the XML Schema ( Learn Details of XML )standard. So
using service we can transport simple data (strings and numbers, object,arrays)
and we can't send .Net object like FileStream, an Image. If you want to
transport .net( like FileStream, an Image) object to the client then client
should be in .net platform.
Web service supported data types are
• Primitive data types (The Basics): The built in C# data types
such as short, int, long, ushort, uint,
ulong, float, double, decimal, bool, string, char, byte and DateTime.
• Classes and structure: The Classes and structure with serialize
public fields or property.
• Arrays: Arrays of any supported type (built-in or custom
objects). You can also use an ArrayList (that is
simply converted into an array).
• Enum types: Enums are supported.
• XmlNode: Xmlnode types can be passed as a parameter or return
values.
• DataSet : DataSet are allowed. .
Now To create a web service using visual studio do the following
steps:
First open a visual studio and create a web site project. If you
are using VS2010 or above then Change the framework version to 3.5. Now add the
Web service with a name. This picture will give the details information how to
do the above functionality.
Create A web service in a web application |
After creating web service it
will generate automatically a code behind file which shown in below picture
The MyService class has a method
HelloWorld that is decorated with a “[WebMethod]”
attribute. The methods of the service that are to be accessed by the client
application should be decorated with this attribute. There may be some
method that the service is using for some internal functionality, client
applications don't need to access them. Don't decorate such methods with a
WebMethod attribute.
Instead of using Project if you create a website then with in web
service asmx page you will find the below tag. Using both the way you can
create Web service.
1. <%@ WebService Language="VB"
CodeBehind="~/App_Code/MYService.vb" Class="MYService"
%>
• The “WebService” directive, indicates this asmx page is a web
service.
• The “Language="C#"”, is to indicate language used for
this service.
• The “CodeBehind” property is nothing to do with ASP.NET or web
service, this is completely a Visual Studio property, that is used to map the
asmx page with it's code behind page.
Now, run your application by hitting F5,
http://..../MYService.asmx will open in your browser (the port number may
vary). On the top of the below image you will find a link "click
here for complete list of operation", that will redirect to the WSDL
document ( Learn Details on WSDL ) of the service,
another link for HelloWorld (list for methods exposed by service) that will
redirect to a page for testing this method (In this picture the localhost
tab containing the result details.).