Мое веб-приложение ASP.NET использует внутренний канал RSS, который использует идентификацию текущего пользователя, вошедшего в систему, для настройки его содержимого. RSS-канал генерируется стандартным обработчиком .ashx в моем приложении.
Когда я вызываю RSS-канал с использованием XElement.Load(rssFeedUri)
, состояние сеанса не поддерживается (предположительно, потому что файл cookie идентификатора сеанса не отправляется с запросом).
Канал RSS работает, как задумано, при вызове непосредственно из адресной строки браузера для вошедшего в систему пользователя. Я уже гарантировал, что мой обработчик реализует IRequiresSessionState
, так что если идентификатор сеанса передается службе, я могу получить доступ к данным сеанса.
Используя отладчик Visual Studio, я определил, что новый сеанс создается при доступе к моему каналу через XElement.Load.
Как я могу загрузить свой RSS-канал и убедиться, что ему доступно состояние сеанса?