2011-01-16 15 views
6

Tôi đã gặp phải một hành vi rất thú vị của phiên đáng tin cậy. Tôi đang sử dụng netTcp binding + duplex channel + session đáng tin cậy.WCF Phiên đáng tin cậy mà không cần bảo mật giao thông sẽ không bị lỗi sự kiện đúng lúc

Khi tôi đang cố gắng nghe trên kênh.đã bị hỏng, nếu có chế độ bảo mật được đặt để truyền tải, sự kiện bị lỗi sẽ kích hoạt ngay lập tức khi khách hàng ngắt kết nối.

Tuy nhiên khi tôi đặt chế độ bảo mật của liên kết thành Không có hoặc Thư, sự kiện bị lỗi không còn phát sinh trong cùng một tình huống. Cuối cùng họ sẽ nhận được một nửa số lỗi của ReciveTimeout ở phía máy chủ mà tôi hiểu là phiên đáng tin cậy sẽ gửi một thông điệp về nhịp tim vào thời điểm đó.

Câu hỏi đặt ra là: Tại sao ràng buộc wcf không bị lỗi thời gian?

Cách giải quyết cho trường hợp này là tôi có thể "ping" kết nối theo cách thủ công.

+0

Câu hỏi chính xác là gì? Bạn có hỏi tại sao nó như vậy? ... hoặc những gì bạn có thể làm, nếu có gì? –

+0

Có, xin lỗi là không rõ ràng. Tôi muốn biết tại sao nó là như vậy và đã đăng một cách giải quyết cho nó. – Yuan

Trả lời

0

Ràng buộc NetTcp theo mặc định sử dụng Transport security với Windows credentials. Tất cả các ràng buộc ngoại trừ BasicHttp và WebHttp đều được bảo mật theo mặc định.

+0

Đúng vậy. Đó là lý do tại sao tôi phải đặt mã bảo mật thành None và phiên đáng tin cậy không còn gây ra lỗi thời gian nữa. – Yuan