Các công nghệ WCF, Web API, WCF REST và Web Service đều là những giải pháp phát triển dịch vụ web trên nền tảng .NET, nhưng chúng có những đặc điểm và ứng dụng khác nhau.
Web Service
- Là công nghệ cũ nhất trong số này, dựa trên giao thức SOAP (Simple Object Access Protocol) và trả về dữ liệu dạng XML.
- Chỉ hỗ trợ giao thức HTTP.
- Không phải là Open Source nhưng có thể sử dụng được với bất kỳ client nào hỗ trợ XML.
- Chỉ có thể được host trên IIS.
- Ưu điểm: Code và Test đơn giản.
- Nhược điểm: Chỉ hỗ trợ giao thức SOAP để truyền nhận dữ liệu nên hiệu suất không cao và không thể tạo ra service dạng REST hỗ trợ định dạng dữ liệu JSON.
WCF (.NET 3.0 trở lên)
- Phát triển dựa trên Web service và hỗ trợ thêm rất nhiều giao thức khác nhau như TCP, HTTP, HTTPS, Named Pipes, MSMQ.
- Dựa trên SOAP và trả về dữ liệu dạng XML.
- Cấu hình khó nhớ là một nhược điểm cố hữu của WCF.
- Không phải Open Source nhưng có thể sử dụng bởi các client hỗ trợ XML.
WCF REST
- Là việc sử dụng WCF để tạo ra các dịch vụ RESTful, bằng cách kích hoạt webHttpBindings.
- Hỗ trợ các phương thức HTTP GET và POST thông qua các thuộc tính [WebGet] và [WebInvoke]....