2009-04-30 29 views

Trả lời

6

Tôi đã tham gia vào câu hỏi này một vài lần ngay bây giờ, vì vậy từ trải nghiệm của riêng tôi và những người khác, hãy đi với WCF chỉ khi bạn sẵn sàng tham gia vào đường cong học tập. Tạo ra các đối tượng là không có trí tuệ, thực sự thẳng về phía trước và dễ sử dụng. Nhưng ...

Một số cạm bẫy phổ biến:

  • Giá trị mặc định ràng buộc là wsHttpBinding được bảo đảm theo mặc định. Nếu bạn muốn đi với một cái gì đó truyền thống hơn, sử dụng basicHttpBinding.
  • Nếu bạn đang lưu trữ trong IIS, hãy đảm bảo đặt tiêu đề máy chủ hoặc tài liệu tham khảo xsd uri tất cả sẽ là localhost hoặc tên máy chủ.
  • Sử dụng Tiện ích Cấu hình WCF, nó sẽ giúp ích rất nhiều khi bạn định cấu hình điểm cuối của mình.
+0

+1 cho ghi chú trên wsHttpBinding. Điều đó vấp tôi. –

1

Nếu dịch vụ của bạn cần có sẵn trên nhiều giao thức giao tiếp và bạn cần định cấu hình bảo mật, WCF là cách để thực hiện.

Nếu dịch vụ chỉ cần được cung cấp qua HTTP và/hoặc HTTPS, dịch vụ web ASMX sẽ là con đường để đi nếu bạn có một thời gian hạn chế

4
  • Microsoft đã nói rằng WCF là sự thay thế cho Web Dịch vụ.
  • Thay thế các dịch vụ web sẽ các dịch vụ WCF không đặc biệt khó khăn khi bạn tìm hiểu cú pháp cơ bản.
  • Dịch vụ WCF cung cấp mọi thứ mà Dịch vụ Web làm cộng với cho phép bạn triển khai cùng một thành phần trong các ngữ cảnh khác - bạn có thể triển khai thành phần của mình dưới dạng dịch vụ web hoặc gắn trong dịch vụ cửa sổ để cung cấp chức năng tương tự cho phần mềm khác nó trong quá trình với bất kỳ mã nào khác của bạn - mà không bao giờ phải thay đổi mã bên trong dịch vụ.
  • WCF có thể được định cấu hình để bảo mật tốt hơn.

Nghiêm túc, hãy lấy một bản sao của "Dịch vụ lập trình WCF tuyệt vời" của Juval Lowy và đọc chương đầu tiên. Tạo một vài dịch vụ và bạn sẽ sớm nhận ra rằng nó không khó như lúc đầu.

WCF là tương lai của các thành phần trong .NET. Dịch vụ web là quá khứ.

0

Một khi bạn nhận được thiết lập WCF, tuyệt vời của nó! Sử dụng SQL & LINQ qua WCF để trả lại dữ liệu của bạn là (đối với tôi) SO nhanh hơn nhiều !!

Một điều lưu ý: Chứng chỉ!

Chúng tôi có rất nhiều vấn đề ở đó! Điều này đã giúp link.

Chúc may mắn!

3

Điều này sẽ không có trí tuệ. Quá tệ nó không phải là.

Câu trả lời là WCF. Nó thay thế các dịch vụ web ASMX cũ.Không còn chính xác khi nói rằng WCF là tương lai - đó là hiện tại, và ASMX là quá khứ, nhanh chóng trở thành lịch sử cổ đại.

Tập hợp con WCF mà bạn cần học cách làm giống như bạn đang làm với dịch vụ ASMX thực sự rất dễ dàng.

  1. Bạn không cần biết bất kỳ ràng buộc nào bởi basicHttpBinding. Sử dụng điều này, các chương trình khách hàng của bạn thậm chí có thể tiếp tục sử dụng Tài liệu tham khảo web.
  2. Bạn cần phải học cách không lo lắng về các chi tiết của XML mà các hợp đồng dữ liệu của bạn đang được tuần tự hóa.
  3. Bạn cần phải biết rằng các phần duy nhất của DataContract sẽ được tuần tự hóa là những phần được đánh dấu là [DataMember]. Đó là một mô hình "chọn tham gia" thay vì mô hình "chọn không tham gia" mà bạn đã có với Trình nối tiếp XML.
  4. Bạn cần tìm hiểu cách xác định hợp đồng dịch vụ của mình với giao diện được đánh dấu bằng [ServiceContract]
  5. Bạn không cần lớp [WebService], mà chỉ đơn giản là lớp triển khai giao diện [ServiceContract] của bạn.

Đó là tất cả, thực sự. Bạn sẽ học nó rất nhanh. Phần còn lại của nó là "nước thịt". Nó là một loại nước sốt rất phong phú, với rất nhiều "thịt" trong đó, nhưng bạn có thể để nó ở một bên, hoặc chỉ mất một chút nếu bạn muốn nó.

Các vấn đề liên quan