Skillnaden mellan WCF och Web API

Vad รคr WCF?

WCF stรฅr fรถr Windows Kommunikation Foundation. Det anvรคnds fรถr att skapa en distribuerad och interoperabel applikation. WCF รคr en effektiv plattform fรถr att utveckla tjรคnsteorienterade applikationer. Det tillรฅter utvecklare att skapa sรคkra, pรฅlitliga och hรถgprofilerade utvecklingslรถsningar som kan integreras รถver plattformar och samverka med befintliga investeringar.

Vad รคr webb-API?

ASP.NET Web API รคr ett ramverk som lรฅter dig bygga HTTP-tjรคnster fรถr webblรคsare och mobila enheter. Det รคr en idealisk plattform fรถr utveckling RESTful applikationer pรฅ ASP .NET Framework.

ASP.NET Web API รคr ett utbyggbart ramverk fรถr att bygga HTTP-baserade tjรคnster som kan nรฅs i olika applikationer pรฅ olika plattformar sรฅsom webb, fรถnster, mobila enheter, etc.

NYCKELSKILL

  • WCF erbjuder begรคran-svar, envรคgs- eller duplex medan Web API som standard endast รคr fรถrfrรฅgan-svar.
  • WCF anvรคnds fรถr att utveckla SOAP-baserade tjรคnster medan Web API anvรคnds fรถr bรฅde SOAP-baserade och RESTful-tjรคnster.
  • WCF erbjuder inget stรถd fรถr MVC-funktioner medan Web API stรถder MVC-funktioner.
  • WCF stรถder HTTP, UDP och anpassade transportprotokoll medan webb-API endast stรถder HTTP-protokoll.
  • WCF erbjuder stรถd fรถr text, MTOM och binรคr kodning medan webb-API stรถder UTF-8-kodningsformatet.
  • WCF stรถder meddelandekรถer, meddelandesรคkerhet, duplexkommunikation, transaktion medan Web API inte stรถder.
  • WCF stรฅr fรถr Windows Kommunikation Foundation medan API stรฅr fรถr Application Program Interface.

Varfรถr anvรคnda WCF?

Stack Overflow-frรฅgor ASP.net webb-API vs. WCF
Stack Overflow-frรฅgor ASP.net webb-API vs. WCF

Hรคr รคr fรถrdelar/fรถrdelar med att anvรคnda WCF:

  • WCF รคr ett idealiskt alternativ om du planerar att anvรคnda .NET Framework 3.5.
  • WCF stรถder flera protokoll som HTTP, TCP, Named pipe.
  • WCF-tjรคnsten รคr anvรคndbar om du vill bygga tjรคnster med standarder som Transactions Messaging-sรคkerhet och Reliable Message Security.
  • Du kan anvรคnda Request-Reply, One Way och Duplex meddelandeutbytesmรถnster med WCF.

Varfรถr anvรคnde Web API?

Google Trends WCF vs. ASP.Net webb-API

Google Trends WCF vs. ASP.Net webb-API

Hรคr รคr fรถrdelar/fรถrdelar med att anvรคnda webb-API:

  • Web API ger stรถd fรถr konventionsbaserade CRUD Actions eftersom det fungerar med HTTP-verb (GET, PUT, POST och DELETE)
  • Det รคr lรคtt att definiera, exponera och konsumera pรฅ ett VILA-fullt sรคtt.
  • ASP.Net Web API lรฅter dig visa upp dina data och tjรคnster fรถr olika enheter.
  • Web API รคr รถppen kรคllkod, sรฅ det รคr ett idealiskt alternativ fรถr att skapa RESTful-tjรคnster รถver .NET-plattformen.
  • Tillรฅter dig skalbar, frikopplad utveckling av en webbtjรคnst som kan delas och anvรคndas av andra utvecklare fรถr att komma รฅt webbtjรคnster.
  • Det รคr ocksรฅ anvรคndbart att bygga enkla, icke-SOAP-baserade HTTP-tjรคnster.

Egenskaper fรถr WCF

  • Mycket konfigurerbara transporter
  • Bรคttre alternativ fรถr serialisering
  • Vรคl integrerad med IIS
  • Lรคtt fรถr sjรคlvhotell
  • Mycket rik metadata
  • Komplex modell fรถr publicering
  • Rika datakontrakt

Egenskaper fรถr webb-API

  • Tรคtt kopplat till HTTP
  • Lรคtt att testa
  • Erbjuder stรถd fรถr innehรฅllsfรถrhandling
  • Tillรฅter รถppen formatering
  • Inget beroende av en plattform
  • Gedigen resursorientering
  • Nivรฅ 2-erfarenhet med begynnande hypermediastรถd

WCF vs webbtjรคnst

WCF vs webbtjรคnst

Parameter WCF Web API
Meddelandeutbytesmรถnster Begรคr svar, enkelriktad eller dubbelsidig. Som standard endast fรถrfrรฅgan-svar. Ytterligare meddelandemรถnster kan dock stรถdjas med webbsockets integration.
vรคrd IIS hosting, Self-hosting & Works aktiveringstjรคnster. Self-hosting & IIS hosting.
Open Source Det รคr inte programvara med รถppen kรคllkod. Den levereras med.Net framework. Den รคr ocksรฅ tillgรคnglig som en oberoende nedladdning.
Stรถd fรถr MVC-funktioner WCF tillhandahรฅller inget stรถd fรถr MVC-funktioner som kontroller, routing, filter, auktionsresultat, etc. ASP.NET Web API stรถder MVC-funktioner som routing, kontroller, resultat, filter, action, etc.
Stรถd fรถr kodning Text, MTOM och binรคr. Standardstรถd fรถr UTF-8-kodningsformat.
Stรถd fรถr Stรถd fรถr HTTP, UDP och anpassade transportprotokoll. Stรถder endast HTTP-protokoll
Anvรคndning av modell Anvรคndarattribut baserad programmeringsmodell. Mappar HTTP-verb till metoder
konfiguration Anvรคnder web.config och attribut fรถr att konfigurera en HttpConfiguration-klass men inte pรฅ web.config-tjรคnsten. Webb-API kan konfigureras med tjรคnsten web.config.
ROLIGA tjรคnster Den erbjuder stรถd fรถr RESTFUL service men med begrรคnsningar. Idealisk fรถr att bygga ROLIGA tjรคnster.

Den avgรถrande faktorn fรถr WCF vs Web API

Fรถljande รคr en snabb checklista som hjรคlper dig att avgรถra om du ska anvรคnda WCF eller Web API

Scenario WCF 4.5 ASP.NET Web API
Krรคver stรถd fรถr scenarier som meddelandekรถer, meddelandesรคkerhet frรฅn slut till slut, duplexkommunikation, distribuerade transaktioner, etc. Vรคlja Vรคlj INTE
Nรคr du redan har befintliga fungerande WCF-tjรคnster och vill lรคgga till HTTP-stรถd ytterligare. Vรคlja Vรคlj INTE
En kodbas fรถr att ge stรถd fรถr bรฅde SOAP och RESTful endpoints. Vรคlja Vรคlj INTE
Vill skapa en resursorienterad tjรคnst รถver HTTP. Vรคlj INTE Vรคlja
Ditt projekt รคr en MVC-applikation och vill ha viss funktionalitet รถver HTTP. Vรคlj INTE Vรคlja
Du vill bara bygga en HTTP / RESTful-tjรคnster Vรคlj INTE Vรคlja

Sammanfatta detta inlรคgg med: