Forskjellen mellom svc og asmx

.svc vs ... asmx

Må vi virkelig si farvel til .asmx?

Hver webutvikler er kjent med .asmx, mens noen bare blir kjent med .svc. Dette er tekniske konsepter som er av største betydning for en utviklerens arbeidslinje på grunn av sin dynamiske natur. Spørsmålet er, er det virkelig en stor forskjell mellom .svc og .asmx? Skal folk gjøre den store bryteren fra .asmx til .svc?

.ASMX definerer webtjenester kalt av en Active Server Page (.ASP-fil), som automatisk akkumuleres av ASP.NET når det er en forespørsel til tjenesten. Disse er lett tilgjengelige på Internett, og også fra et lokalt nettverk. For å sette programmeringsspråket til Visual Basic, C # eller Jscript, .asmx-filer starter med ASP.NET-direktivet WebService, som deretter blir etterfulgt av språkparameteren ved hjelp av en Windows-basert webserver med .NET-rammeverket.

På den annen side er SVC, eller .svc, en datafileutvidelse som brukes av Microsofts Windows Communication Foundation til å symbolisere en tjeneste som er vert for Internet Information Services. Windows Communication Foundation, eller WCF, er et applikasjonsprogrammeringsgrensesnitt (API) i .NET-rammen for å bygge sammenkoblede, tjenesteorienterte applikasjoner.

Så hva er forskjellen mellom de to? .SVC kan kalles .asmx på steroider, fordi det kan gjøre alt som .asmx kan, men med flere funksjoner. Når webutviklere snakker om .asmx, vet de at det er noe ikke så komplisert - det kan konfigureres enkelt. Ulempen er at den bare kan hentes fra HTTP, mens .svc brukes med HTTP, MSMQ, og kan hostes via forskjellige plattformer som Winforms-applikasjonen.

Som vi kan se, kan .svc erstatte .asmx i all sin herlighet.

Men .svc kan medføre mer trening; Det er behov for ekstra innsats for å forstå konfigurasjonen av .svc. Dette er grunnen til at mange utviklere fortsatt foretrekker å bruke .asmx over .svc ... ASMX er enkelt, men ikke veldig kraftig; .SVC er fremtiden for .Net-plattformen.

.ASMX og .SVC er både enkle å lære og kode, og har parallelle attributter som er supplerende til service og dataklasser. Men likheten slutter der. Flere viktige forskjeller mellom de to er som følger: .asmx er enklere å konfigurere enn .svc, fordi .svc legger til så mange konfigurasjonstaster med ulike alternativer som kanskje ikke er helt nyttige ... ASMX er lett å distribuere på grunn av .svc og dets komplekse konfigurasjoner og alternativer. ASMX støtter ikke WS- * -standarder, i motsetning til .svc; det vil være et veldig stort problem for å jobbe med WS- * med .asmx ... SVC støtter også binære dataformater og REST. I tillegg kan .SVC fange meldinger på tvers av tjenesten / klienten. Det er en .svc-skapt kode som kan kjøre ubestemte prosedyrer for å fange opp meldinger og kursere dem på tvers av alle tjenesteoperasjoner.

.ASMX kan ikke gjøre dette, noe som er uheldig fordi det kan være praktisk i visse komplekse omstendigheter som å gjøre tilpasset godkjenning, autorisasjon, logging og rutingteknikker. Men hvis du fortsatt bruker SOAP Basic Profile, må du alltid bruke .asmx for enkelhet og deretter bytte til .svc hvis du trenger en av funksjonene. Fortsatt er veien å gå helt å bytte til .svc.

.ASMX nærmer seg utryddelse, og .svc er nåtiden og fremtiden for webutvikling ... SVC kan gjøre mye mer enn alle .asmx-kombinert, derfor er det et presserende behov for å lære .svc.

Sammendrag:

1.The .asmx definerer webtjenester kalt av en Active Server Page (.ASP-fil), som automatisk akkumuleres av ASP.NET når det er en forespørsel til tjenesten.

2 ... SVC, eller .svc, er en datafileutvidelse som brukes av Microsofts Windows Communication Foundation for å symbolisere en tjeneste som er vert for Internet Information Services.

3 ... SVC kan kalles .asmx på steroider.

4 ... SVC kan erstatte .asmx i all sin herlighet.