WCF means Window communication Foundation which is introduced in .net framework 3.0. Before WCF there is webservice is famous for communication.
RESTful Service means Representational State Transfer (REST),Differnce between normal WCF service and RESTful WCF Service
There is no more difference between WCF service and REST service only main difference is that How Client accesses our Service.
Normal WCF service runs on the SOAP format but when we create REST service then client can access your service in different architecture style like JSON
REST uses4 HTTP methods to insert/delete/update/retrieve information which is below:GET
- Retrive a specific representation of a resourcePUT
- Creates or updates a resource with the supplied representationDELETE
- Deletes the specified resourcePOST
- Submits data to be processed by the identified resourceWhere to Use RESTful WCF Service
There are some scenario’s where we can use RESTful service like
1) Less Overhead because there is no use of SOAP object
2) Testing is very easy
3) Standardization is very niceCreation of RESTful WCF Service
Create a new WCF project in VS 2008/20010Step 2:
Delete a Service Model node from Web.configStep 3.
Build the Solution then Right click on the svc file and Click on View Markup button
And add following code to the markup
Add following references to the WCF Service Application project, if you are using VS2010
public interface IService1
[OperationContract(Name = " AddTwoNumber ")]
[WebInvoke(UriTemplate = "/", Method = "POST")]
int AddTwoNumber(int i, int j);
[OperationContract(Name = " SubTwoNumber")]
[WebGet(UriTemplate = "/")]
int SubTwoNumber(int i, int j);
Add your code in your service like here I have created 2 methods like AddTwonumber which takes two parameter I and j
In the above code we use
WebInvoke :- means invoke web method
Webinvoke takes Two parameters like
1. Method Type there are 4 types of method
2. UriTemplate = "/ADD” tells what would be URI for this particular method
Like this we can create RESTful service.More differences:
Web Service is an abstract term encompassing a large variety of data providers for distributed systems. Perhaps you are referring to ASMX web services, which can still be found in the wild but aren't really widely used in new development these days.
WCF Service is Microsoft's implementation of SOAP. There are others implementations or you could roll your own (not recommended).
SOAP is a kind of stateful, session-based, message-based web service. It's good if your service is designed as a set of complex actions.
REST is a stateless, sessionless, resource-based web service. It's good if your service is designed to access data and perform simple CRUD operations on it. SOAP and REST are mutually exclusive. A service cannot be both. There are ways to manipulate vanilla WCF to make is RESTful but these techniques are becoming deprecated. If you want to implement a RESTful web service there are two main choices in the Microsoft world: WCF Data Services and ASP.NET Web API.Nandkishorre, if this helps please login to Mark As Answer. | Alert Moderator