Сеансы не являются злом, они выполняют важную функцию в приложении ASP.NET, обслуживая данные, которые должны быть разделены между несколькими страницами во время «сеанса» пользователя. Есть некоторые предложения, я бы сказал, чтобы использовать управление сеансами SQL, когда это возможно, и убедиться, что объекты, которые вы используете в вашей коллекции сеансов, «сериализуемы». Рекомендуется использовать объект сеанса, когда вам абсолютно необходимо обмениваться информацией о состоянии между страницами, и не использовать его, когда вам это не нужно. Информация не будет доступна на стороне клиента, ключ сеанса хранится либо в файле cookie, либо в строке запроса, либо с использованием других методов, в зависимости от того, как он настроен, а затем объекты сеанса доступны в таблице базы данных ( если вы не используете InProc, в этом случае ваши сеансы будут сорваны во время перезагрузки сайта или будут практически бесполезными в большинстве кластерных сред).