Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Разработка под ASP.NET > Загрузка разных тем страницы в зависимости от адре


Автор: Telsystems 15.7.2013, 09:30
Добрый день.
Есть задача: при входе на страницу, отрисовивать ее в зависимости от адреса, откуда пришли.
Тоесть, например есть страница MainPage.aspx с определенным логотипом, цветами и CSSками.
Если пользователь заходит на эту страницу с www.somesite.com - то картинки орисовываются красные и фон желтый.
А если зашли с www.anothersite.com - то фон синий и картинка голубая.

Решил сделать так :
Создал 2 папки в App_Themes со всеми картинками и CSSками. Назвал их Default и DefaultAnotherDomain.

В событии OnPreInit() я проверяю в какого домена был редирект и в зависимости от этого я подставляю папку с темами.

Код


if (Request.UrlReferrer != null)
            SiteDomain = Request.UrlReferrer.Authority;
       
switch (SiteDomain)
{
    case URL_PATH:

            Page.Theme = "DefaultAnotherDomain";
               
            break;
     default:
            Page.Theme = "Default";
               
            break;
}


Вроде работает, но если, например перейти на страницу сначала с www.somesite.com, а потом с www.anothersite.com, то после все стили и картинки не будут отображатся.
Подскажите пожалуйста как лучше реализовать подобную задачу.
Спасибо.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)