Надежный сеанс WCF без транспортной безопасности не повредит событие вовремя
Я столкнулся с очень интересным поведением надежного сеанса. Я использую связывание netTcp + дуплексный канал + надежный сеанс.
Когда я пытаюсь прослушать канал.faulted, если установлен режим безопасности для транспорта, сбойное событие сработает немедленно, когда клиент отключится.
Однако, когда я устанавливаю режим безопасности привязки None или Message, сбойное событие больше не срабатывает в той же ситуации. В конечном итоге они получат ошибочную половину ReciveTimeout на стороне сервера, что, как я понимаю, при надежном сеансе отправит в это время сердцебиение.
Вопрос: почему привязка wcf не выходит из строя вовремя?
Обходной путь для этого случая - я могу вручную "пропинговать" соединения.
1 ответ
Привязка NetTcp по умолчанию использует безопасность транспорта с учетными данными Windows. Все привязки, кроме BasicHttp и WebHttp, защищены по умолчанию.