Обработка времени ожидания сеанса WCF вручную - PullRequest
0 голосов
/ 16 декабря 2010

Я вручную поддерживаю сессию WCF. При входе в систему клиент получает GUID как идентификатор сессии. Все остальные методы имеют sessionId в качестве параметра, который будет предоставлять клиент. Все работает нормально. Теперь, как я могу вручную управлять тайм-аутом сеанса?

1 Ответ

1 голос
/ 16 декабря 2010

Давайте сначала выясним, что вы пытаетесь поддерживать состояние между вызовами WCF, что, скорее, нарушает принцип, во-первых, первым делом. (Взгляните на вопрос: Ручная обработка времени ожидания сеанса WCF )

Предполагая, что вы генерируете guid, который является идентификатором сеанса, вам нужно где-то его сохранить, база данных кажется вероятной. Сохраните там sessionID с текущим DateTime. При каждом получении запроса проверяйте хранилище на наличие идентификатора сеанса и проверяйте, не превышен ли ваш тайм-аут, в таком случае утилизируйте идентификатор сеанса и сообщайте о состоянии клиенту. Если время ожидания не было превышено, обновите DateTime до текущего текущего DateTime и обработайте запрос.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...