Не понимаю, как применять свойство ISession.IsAvailable. В документации лаконично написано "Указывает, загружен ли текущий сеанс". Что это означает? Что клиент может хранить кукисы? Или что сессия уже была создана ранее?
Это нужно для проверки доступности Distributed session. Можно же хранить сессию не только в самом приложении, то есть на вашем текущем сервере, но и где-то на стороне. Например в Redis.