2012-11-16 19 views
6

Tôi biết chúng tôi có thể sử dụng các ràng buộc trên cho các ứng dụng MSMQ.MsmqIntegrationBinding Vs NetMsmqBinding

Sản phẩm này có thể được tiêu thụ bởi các khách hàng khác (Ngoài ra .net) không?

Sự khác biệt là gì ...? Một số ví dụ thời gian thực sẽ giúp tôi.

Cảm ơn

Trả lời

7

Họ cam kết ràng buộc khá khác nhau (ngay cả khi họ chia sẻ một cơ sở thực hiện lớn trong MsmqBindingBase) và NetMsmqBinding thể được sử dụng chỉ với khách hàng NET WCF khác. MsmqIntegrationBinding được thiết kế để được sử dụng khi ứng dụng của bạn phải interop với các ứng dụng cũ (bằng ngôn ngữ nào) mà sử dụng MSMQ cho thông tin liên lạc, từ MSDN:

này ràng buộc [MsmqIntegrationBinding] có thể được sử dụng để cho phép các ứng dụng WCF để gửi và nhận thư đến và từ các ứng dụng MSMQ hiện có sử dụng COM, C++ API gốc hoặc các loại được xác định trong không gian tên System.Messaging.

khác biệt rõ rệt nhất giữa những cam kết ràng buộc có thể được tóm tắt trong những gì MsmqIntegrationBinding thiếu:

  • hỗ trợ an ninh là khá tầm thường (những gì về các kênh truyền hình an ninh?).
  • Giao diện hợp đồng bị hạn chế hơn (vì nó phải tương tác với các ứng dụng không .NET).
  • Cú pháp cho các địa chỉ khác với các ràng buộc WCF khác (hãy xem EndpointAddress trong các ví dụ trong MSDN).
  • Bạn không thể sử dụng tất cả các tính năng của thư (ví dụ như mã hóa).

Để biết thêm chi tiết về điều này, hãy xem bài đăng trên blog này về MsmqIntegrationBinding in WCF.

Sau đó, khi nào nên sử dụng chúng? Tôi nghĩ rằng bất kỳ ứng dụng WCF mới nào cũng phải sử dụng NetMsmqBinding, chỉ giữ MsmqIntegrationBinding để tương thích với các ứng dụng hiện có. Từ MSDN:

Ràng buộc NetMsmqBinding cung cấp hỗ trợ cho việc xếp hàng bằng cách sử dụng tính năng xếp hàng thư và tải và ngắt kết nối.

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