Różnica między svc i asmx

.svc vs… asmx

Czy naprawdę musimy się pożegnać z .asmx?

Każdy twórca stron internetowych zna .asmx, a niektórzy dopiero się zapoznają z .svc. Są to koncepcje techniczne, które mają ogromne znaczenie dla linii pracy dewelopera ze względu na jego dynamiczny charakter. Pytanie brzmi, czy naprawdę jest duża różnica między .svc i .asmx? Jeśli ludzie dokonają dużej zmiany z .asmx na .svc?

.ASMX definiuje usługi sieciowe wywoływane przez stronę Active Server (plik .ASP), która jest następnie automatycznie gromadzona przez ASP.NET po otrzymaniu żądania do usługi. Są one łatwo dostępne w Internecie, a także z sieci lokalnej. Aby ustawić język programowania na Visual Basic, C # lub Jscript, pliki .asmx rozpoczynają się od dyrektywy Web.Service dyrektywy ASP.NET, a następnie parametr języka zastępuje serwer języka oparty na systemie Windows z platformą .NET.

Z drugiej strony SVC lub .svc to rozszerzenie pliku komputerowego wykorzystywane przez Microsoft Windows Communication Foundation do symbolizacji usługi hostowanej przez Internetowe usługi informacyjne. Windows Communication Foundation (WCF) to interfejs programowania aplikacji (API) w środowisku .NET do konstruowania połączonych aplikacji zorientowanych na usługi.

Jaka jest różnica między nimi? .SVC można nazwać .asmx na sterydach, ponieważ może zrobić wszystko, co może .asmx, ale z większą liczbą funkcji. Gdy programiści WWW mówią o .asmx, wiedzą, że nie jest to zbyt skomplikowane - można go łatwo skonfigurować. Minusem jest to, że można wywoływać tylko z HTTP, podczas gdy .svc jest używany z HTTP, MSMQ i może być hostowany przez różne platformy, takie jak aplikacja Winforms.

Jak widać, .svc może zastąpić .asmx w całej okazałości.

Jednak .svc może wymagać więcej szkoleń; istnieje potrzeba dodatkowego wysiłku w zrozumieniu konfiguracji .svc. To jest powód, dla którego wielu programistów nadal woli używać .asmx zamiast .svc… ASMX jest prosty, ale niezbyt wydajny; .SVC to przyszłość platformy .Net.

.Zarówno ASMX, jak i .SVC są łatwe do nauczenia się i kodowania oraz mają równoległe atrybuty uzupełniające klasy usług i danych. Ale na tym kończy się podobieństwo. Inne kluczowe różnice między nimi są następujące: .asmx jest łatwiejszy do skonfigurowania niż .svc, ponieważ .svc dodaje tyle kluczy konfiguracyjnych z różnorodnymi opcjami, które mogą nie być w pełni przydatne… ASMX można łatwo wdrożyć ze względu na .svc i jego kompleks konfiguracje i opcje. ASMX nie obsługuje standardów WS- *, w przeciwieństwie do .svc; bardzo trudno będzie pracować z WS- * z .asmx… SVC obsługuje również binarne formaty danych i REST. Ponadto .SVC może przechwytywać wiadomości w usłudze / kliencie. Istnieje kod tworzący .svc, który może uruchamiać nieokreślone procedury w celu przechwytywania wiadomości i przeprowadzania ich we wszystkich operacjach serwisowych.

.ASMX nie jest w stanie tego zrobić, co jest niefortunne, ponieważ może być praktyczne w pewnych skomplikowanych okolicznościach, takich jak niestandardowe uwierzytelnianie, autoryzacja, rejestrowanie i routing. Jeśli jednak nadal używasz podstawowego profilu SOAP, zawsze używaj .asmx ze względu na jego prostotę, a następnie przełącz się na .svc, jeśli potrzebujesz jednej z jego funkcji. Jednak droga do przejścia to całkowite przejście na .svc.

.ASMX jest bliski wyginięcia, a .svc jest teraźniejszością i przyszłością tworzenia stron internetowych… SVC może zrobić znacznie więcej niż wszystkie .asmx łącznie, dlatego istnieje pilna potrzeba nauki .svc.

Streszczenie:

1. .asmx definiuje usługi sieciowe wywoływane przez stronę Active Server (plik .ASP), która jest następnie automatycznie gromadzona przez ASP.NET, gdy pojawi się żądanie do usługi.

2… SVC lub .svc to rozszerzenie pliku komputerowego używane przez Microsoft Windows Communication Foundation do symbolizacji usługi hostowanej przez Internetowe usługi informacyjne.

3… SVC można nazwać .asmx na sterydach.

4… SVC może zastąpić .asmx w całej okazałości.