2013-02-26 2 views
4

фон:Почему WCF повреждает канал при использовании безопасности?

Я заметил, что в моей WCF услугах, когда я выбросить исключение (обычное старое исключение), канал клиента вводит поврежденное состояние и должен быть прервана и вновь созданными до I может сделать другой вызов на этом канале. Хорошо. Так оно и предназначено. Я понял. Поэтому я просто вызываю abort() и повторно создаю, если мне нужно сделать другой звонок.

Однако ошибка канала клиента происходит только тогда, когда я использую привязку с включенной безопасностью. Когда я использую basicHttpBinding, я могу получить исключение на клиенте, а затем продолжать использовать объект ServiceClient, не сообщая мне, что он находится в «состоянии с ошибкой».

Кроме того, когда я отключу защиту от wsHttpBinding или netTcpBinding, я могу повторно использовать канал после исключения.

Вопрос:

Что идет о безопасности связывания в том, что делает его вину канала так что неработоспособные?

ответ

1

Это связано с тем, что с безопасностью вы настраиваете безопасную сессию. Когда вы выходите из этой сессии, канал переходит в состояние с ошибкой, и вы должны прервать его и создать новый. С BasicHttpBinding сеанс отсутствует.

Смежные вопросы