2012-05-31 8 views
0

У меня есть веб-приложение asp.net, которое использует cookieless-сессии (то есть идентификатор сеанса находится в URL-адресе, а не в файле cookie) и темы. Использование темы, ссылки на CSS файлы будут включены в HTML, отправляемое клиенту с URL, который включает в себя идентификатор сеанса, как:asp.net cookieless сессии и темы приложения, возможно ли иметь css-файлы, на которые ссылается URL-адрес без идентификатора сеанса?

http://website/(S(12344jkjl232343)/app_themes/folder/site.css 

Если ссылки CSS изображения с использованием пути относительно расположения Css, те изображения будут извлекаться через URL-адрес, который также включает идентификатор сеанса.

Поскольку идентификатор сеанса изменяется после каждого входа, клиенты всегда должны запрашивать файлы css с сервера по крайней мере один раз в начале сеанса и не могут использовать кеш локального браузера.

Есть ли простой способ, чтобы asp.net вставлял ссылки на файлы ресурсов без идентификатора сеанса, чтобы повторные посетители могли использовать свой локальный кеш браузера?

Ищет быстрый и простой способ с низким уровнем риска. То есть проще (и создавая меньшую поверхность повторного тестирования), чем отходить от использования тем в первую очередь, что будет среднесрочным планом.

Спасибо!

ответ

1

Итак, если вы используете сеансы cookieless, я предполагаю, что пользователи всегда будут на одном веб-сайте.

Если они находятся на том же веб-сайте, вам не нужно отправлять тему через http. Вместо этого сохраните тему в сеансе (памяти).

// store the selected theme 
this.Session["theme"] = "/app_themes/folder/site.css"; 

или создать таблицу и просто хранить Там ID

// store the selected theme 
this.Session["Themeid"] = "1"; 
+0

Спасибо. На самом деле наше потенциальное решение *, когда мы будем использовать использование встроенной обработки темы asp.net, было бы еще проще. Честно говоря, в этом случае нет оснований использовать asp.net-тематику в этом приложении, но теперь устаревшее приложение построено таким образом, и мы ищем простой выход, который не требует касания всех файлов aspx. Таким образом, вопрос больше, если есть простой (возможно настраиваемый) параметр для сохранения обработки темы asp.net как есть, и просто используйте asp.net для использования статических URL-адресов, поэтому не нужно касаться всех aspx-файлов. Я ожидаю, что ответ будет просто «нет», но хочу убедиться ... –

 Смежные вопросы

  • Нет связанных вопросов^_^