Модераторы: gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> использование global.asax, определение страницы 
:(
    Опции темы
Wanderer2019
Дата 1.4.2008, 22:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 937
Регистрация: 3.12.2004
Где: Санкт-Петербург/П рага

Репутация: 1
Всего: 17



Привет!
Столкнулся с такой проблемой.
На сайте использую неявную передачу параметров, а именно id страниц, которые вдальнейшем грузятся из БД. Эти самые id я передаю непосредственно в URL, как страницу. т.е. что то вроде http://www.test.com/10, где 10 - это тот самый id. Соответственно мне нужно как то обработать это и вывести страницу. Для этого я создал файл global.asax, и в событии Application_BeginRequest разбиваю полученный URL и хочу вывести эту самую страницу с id=10. Но вот как это лучше сделать - непонимаю... Не получается поправить список параметров объекта Request т.к. он read-only. Так же не получается поменять страницу запроса и в конце концов приложение пытается послать запрос в дерикторию 10, но там нет стриницы по учмолчанию и валится ошибка... Как же быть? Как поступать в таких случаях?
PM ICQ MSN   Вверх
Zakonnic
Дата 2.4.2008, 13:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 161
Регистрация: 25.4.2006

Репутация: 3
Всего: 6



Что если попробовать
Код

HttpContext ctx = HttpContext.Current;
ctx.Server.Transfer("~/" + pageAddress);

--------------------
...и никогда не пишите в комментариях правду
PM MAIL ICQ   Вверх
Mymik
Дата 3.4.2008, 11:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1474
Регистрация: 12.5.2006
Где: Lamer-центер

Репутация: 50
Всего: 78



Я обычно в таких случаях пишу HttpModule и при переадресации использую 
Код

HttpContext.Current.RewritePath()



--------------------
ICQ ::            857-857
E-mail ::         mymik[at]inbox[dot]ru 
HomaPage ::  http://localhost/

:to_become_senile  :this
PM MAIL WWW ICQ   Вверх
Wanderer2019
Дата 3.4.2008, 21:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 937
Регистрация: 3.12.2004
Где: Санкт-Петербург/П рага

Репутация: 1
Всего: 17



Цитата(Mymik @  3.4.2008,  11:03 Найти цитируемый пост)
Я обычно в таких случаях пишу HttpModule и при переадресации использую 

Спасибо за совет! Почитал про модули - интересно. чем принципиально отличается от использования global.asax? Я так понимаю что актуально использовать модули в тех случаях, когда есть смысл писать именно несколько модулей, чтобы разбить логику. Или я не правильно понял?
PM ICQ MSN   Вверх
Mymik
Дата 4.4.2008, 08:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1474
Регистрация: 12.5.2006
Где: Lamer-центер

Репутация: 50
Всего: 78



Цитата(Wanderer2019 @  3.4.2008,  21:45 Найти цитируемый пост)
Я так понимаю что актуально использовать модули в тех случаях, когда есть смысл писать именно несколько модулей, чтобы разбить логику. Или я не правильно понял? 
 В принципе, это тоже самое как и писать ascx и Aspx страницы... Я один раз написал httpModule добавил секцию в web.config, которая перенаправляет данные по регулярным выражениям и не мучаюсь больше. Просто от проекта к проекту тяну.
Просто, если у тебя есть только один вид тип переадресации (только один id передавать) то тебе не особо имеет смысл писать httpModule а если у тебя от одного до пяти параметров может передаваться... то тут уже слишком большая логика для бедного global.asax файла smile я бы сравнил это с написанием логики в get/set свойствах smile этого никто не запрещает, но читать потом не очень приятно :( 



--------------------
ICQ ::            857-857
E-mail ::         mymik[at]inbox[dot]ru 
HomaPage ::  http://localhost/

:to_become_senile  :this
PM MAIL WWW ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
Любитель
Mymik
mr.DUDA

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Любитель, Mymik, mr.DUDA.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Разработка под ASP.NET | Следующая тема »


 




[ Время генерации скрипта: 0.0563 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.