Solved

ASP.Net Web API

Posted on 2014-01-06
5
763 Views
Last Modified: 2014-01-15
Hi Experts,

Is ASP.Net Web API stable and reliable for intensive business use ?
I'm exploring options for a critical business project.

The plan is -
A data service provider will be hosted in IIS which will be developed based on existing production DB objects (tables/Stored Procedures ) etc.

Then client side applications like mobile/web etc. will be consuming data from it.

The data service provider should support authentication and authorization as well .
I'm thinking to choose between WCF or ASP .Net Web API as options.

Which one would you recommend ?

Thanks.
0
Comment
Question by:MrStevenWin
  • 3
  • 2
5 Comments
 
LVL 96

Expert Comment

by:Bob Learned
ID: 39761785
I would suggest a third option--ServiceStack

https://servicestack.net/
0
 

Author Comment

by:MrStevenWin
ID: 39768042
Sorry, I prefer not buying a third party tool.
I just wold like choose choose a suitable one from Web API and WCF options.

I did some research and found that Web API is suitable as a Front End service provider while WCF is for heavy loaded back end to back end channels.

Among two, I think my situation is a bit more relevant to go with Web API. But, I just would like to ensure that ASP .Net Web API comes with MVC 4 is stable enough for a commercial use. Are there reasons (e.g. security, performance etc.) that I should be worry ?

Thanks.
0
 
LVL 96

Accepted Solution

by:
Bob Learned earned 500 total points
ID: 39768614
ServiceStack is a free, open source implementation that you can install from NuGet, and it makes it much faster and easier than WCF or Web API.

If you are deciding between WCF and Web API, both are stable enough for commercial use.  The correct choice really depends on your concerns.  WCF has been around a while longer than Web API.  There are some that are trying to say that WCF is dead, and Web API is the right choice.

Here is some reading material:

WebAPI or WCF?
http://mattmilner.com/Milner/Blog/post/2012/02/28/WebAPI-or-WCF.aspx

Difference between WCF and Web API and WCF REST and Web Service
http://www.dotnet-tricks.com/Tutorial/webapi/JI2X050413-Difference-between-WCF-and-Web-API-and-WCF-REST-and-Web-Service.html
0
 

Author Comment

by:MrStevenWin
ID: 39773233
Thanks. The first link is working and contained a lot useful ideas and explanations.
The second url can't be opened. Is there any alternative url to second one?
0
 
LVL 96

Assisted Solution

by:Bob Learned
Bob Learned earned 500 total points
ID: 39775211
The second link opens just fine for me in Chrome, so here is the content:

The .Net framework has a number of technologies that allow you to create HTTP services such as Web Service, WCF and now Web API. There are a lot of articles over the internet which may describe to whom you should use. Now a days, you have a lot of choices to build HTTP services on .NET framework. In this article, I would like to share my opinion with you over Web Service, WCF and now Web API. For more information about Web API refers What is Web API and why to use it ?.

Web Service
It is based on SOAP and return data in XML form.

It support only HTTP protocol.

It is not open source but can be consumed by any client that understands xml.

It can be hosted only on IIS.

WCF
It is also based on SOAP and return data in XML form.

It is the evolution of the web service(ASMX) and support various protocols like TCP, HTTP, HTTPS, Named Pipes, MSMQ.

The main issue with WCF is, its tedious and extensive configuration.

It is not open source but can be consumed by any client that understands xml.

It can be hosted with in the applicaion or on IIS or using window service.
WCF Rest

To use WCF as WCF Rest service you have to enable webHttpBindings.

It support HTTP GET and POST verbs by [WebGet] and [WebInvoke] attributes respectively.

To enable other HTTP verbs you have to do some configuration in IIS to accept request of that particular verb on .svc files

Passing data through parameters using a WebGet needs configuration. The UriTemplate must be specified

It support XML, JSON and ATOM data format.

Web API
This is the new framework for building HTTP services with easy and simple way.
Web API is open source an ideal platform for building REST-ful services over the .NET Framework.

Unlike WCF Rest service, it use the full featues of HTTP (like URIs, request/response headers, caching, versioning, various content formats)

It also supports the MVC features such as routing, controllers, action results, filter, model binders, IOC container or dependency injection, unit testing that makes it more simple and robust.

It can be hosted with in the application or on IIS.

It is light weight architecture and good for devices which have limited bandwidth like smart phones.

Responses are formatted by Web API’s MediaTypeFormatter into JSON, XML or whatever format you want to add as a MediaTypeFormatter.

To whom choose between WCF or WEB API

Choose WCF when you want to create a service that should support special scenarios such as one way messaging, message queues, duplex communication etc.

Choose WCF when you want to create a service that can use fast transport channels when available, such as TCP, Named Pipes, or maybe even UDP (in WCF 4.5), and you also want to support HTTP when all other transport channels are unavailable.

Choose Web API when you want to create a resource-oriented services over HTTP that can use the full features of HTTP (like URIs, request/response headers, caching, versioning, various content formats).

Choose Web API when you want to expose your service to a broad range of clients including browsers, mobiles, iphone and tablets.
0

Featured Post

Netscaler Common Configuration How To guides

If you use NetScaler you will want to see these guides. The NetScaler How To Guides show administrators how to get NetScaler up and configured by providing instructions for common scenarios and some not so common ones.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

If I have to fix slow responding website my first thoughts are server side optimizations: the database may not be optimized or caching is not enabled, or things like that. We often overlook another major part of our web application: the client. We o…
It’s a strangely common occurrence that when you send someone their login details for a system, they can’t get in. This article will help you understand why it happens, and what you can do about it.
The purpose of this video is to demonstrate how to set up the WordPress backend so that each page automatically generates a Mailchimp signup form in the sidebar. This will be demonstrated using a Windows 8 PC. Tools Used are Photoshop, Awesome…
Use Wufoo, an online form creation tool, to make powerful forms. Learn how to selectively show certain fields based on user input using rules to gather relevant information and data from your forms. The rules feature provides you with an opportunity…

831 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question