Во время отладки вы можете подтвердить, что Session
не равно нулю?Попробуйте указать его полностью квалифицированным как System.Web.HttpContext.Current.Session
в этом классе и посмотрите, поможет ли это кому-нибудь.
Редактировать: В ответ на ответ без ответа, который вы отправили ...
Не рекомендуется помещать этот вспомогательный класс в тот же файл, что и ваша главная страница.Поместите его в свой собственный файл, названный для класса.(Возможно, есть спор о том, должен ли каждый класс иметь свой собственный файл, но в данном конкретном случае ясно, что два класса в этом одном файле очень сильно не связаны и не должны быть вместе.)
Класс можетиметь свое собственное пространство имен, такое как WebApplication1.Helpers
(хотя я рекомендую в будущем использовать что-то более описательное, чем WebApplication1
, но не пытайтесь изменить его здесь, потому что это вызовет ошибки в других местах проекта), и другие классыфайлы могут ссылаться на это пространство имен с помощью using WebApplication1.Helpers
, чтобы использовать этот класс.
Разделение классов на интуитивно понятную структуру в проекте (или нескольких проектах по мере усложнения) облегчит поддержку вбудущее.
И, видя весь файл, класс помощника определенно не должен наследоваться от MasterPage
.Это не нужно, и это добавляет к этому классу вещи, которых там быть не должно.