Asmx для WCF или веб-API

У меня есть приложение, которое я создаю, и на данный момент я создал некоторые веб-службы, используя ASMX. В конце концов, приложение будет развернуто на лазуре. Веб-службы действительно просты в том, что все, что они делают, это вызов класса в папке AppCode, которая обрабатывает всю работу.

Будет ли лучше/проще/быстрее/более эффективно переносить мои веб-сервисы в WCF или в веб-API?

Спасибо за ваши предложения.

PS: Я хочу добавить, что веб-службы должны будут работать в HTTPS. На данный момент они находятся на HTTP, потому что я в режиме разработки.

Ответы

Ответ 1

Однострочный: если у вас уже есть рабочий код, и это рискованно переносить его на другую технологию, оставаясь с рабочим кодом.

Зависит от того, кто отвечает.

Web API охватывает HTTP и предоставляет возможности гибкости с ASMX и WCF. Если вам небезразличен HTTP-контент, согласование содержимого, типы носителей, и вам нужно, чтобы ваша служба вызывалась от любого клиента (включая AJAX), а затем через Web API.

Если вам нужно использовать стандарты безопасности WS * (например, с помощью сертификатов X509, ADFS и т.д.), возможно, измените привязку, обратитесь к разным клиентам, используя различные привязки, расширяемость и т.д., используя WCF.

Если у вас уже есть рабочий код, и все, о чем вы заботитесь, это RPC, и ваши клиенты всегда будут использовать ASMX, а затем придерживаться ASMX.

Производительность

Нет теста, но мое чувство кишки, в порядке убывания: веб-API, ASMX, WCF

Легче

В порядке убывания: ASMX (поскольку вы это знаете), Web API, WCF

Более быстрое развитие

Если вы их знаете, Web API и ASMX, то WCF


PS: хорошо подбирать новые технологии. То, как все происходит (и поскольку вы уже переходите на Azure), важно инвестировать в новые технологии.