Сегодня 31 января, пятница ГлавнаяНовостиО проектеЛичный кабинетПомощьКонтакты Сделать стартовойКарта сайтаНаписать администрации
Поиск по сайту
 
Ваше мнение
Какой рейтинг вас больше интересует?
 
 
 
 
 
Проголосовало: 7278
Кнопка
BlogRider.ru - Каталог блогов Рунета
получить код
Сундук с барахлом - Программерский
Сундук с барахлом - Программерский
Голосов: 2
Адрес блога: http://catlion.name/
Добавлен: 2007-12-04 15:05:56
 

Использование роутинга в классических ASP.NET приложениях

2009-06-11 01:51:06 (читать в оригинале)

Честно говоря, мне не очень нравится идея System.Web.Routing, и я бы использовал ISAPI Rewrite, но люди пытаются, у всех свои задачи и причины, и иногда не получается. В общем, это пост из серии "Спрашивали – отвечаем".

  1. Добавляем Reference на сборку System.Web.Routing и ссылки на модули в web.config. routing-reference
    Web.config:
    <modules>
       ...
       <add name="UrlRoutingModule" type="System.Web.Routing.UrlRoutingModule, System.Web.Routing, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
    </modules>
  2. Создаем класс global.asax, в котором инициализируем таблицу маршрутизации.
    protected void Application_Start(object sender, EventArgs e)
    {
       RegisterRoutes(RouteTable.Routes);
    }
    
    private void RegisterRoutes(RouteCollection routeCollection)
    {
       RouteTable.Routes.Add(new Route("{username}", new UsersRouteHandler()));
    }

  3. Создаем класс, реализующий интерфейс IRouteHandler, в котором заполняем HttpContext нужными данными, которые будут переданы на целевую страницу.
    public class UsersRouteHandler : IRouteHandler
    {
       IHttpHandler IRouteHandler.GetHttpHandler(RequestContext requestContext)
       {
          string userName = requestContext.RouteData.GetRequiredString("username");
      
          HttpContext.Current.Items["username"] = userName;
          return (Page)BuildManager.CreateInstanceFromVirtualPath(
             String.Format("~/users.aspx", userName),
             typeof(Page));
       }
    }

Скачать RoutingApp.zip (25Kb)




 


Самый-самый блог
Блогер Рыбалка
Рыбалка
по среднему баллу (5.00) в категории «Спорт»


Загрузка...Загрузка...
BlogRider.ru не имеет отношения к публикуемым в записях блогов материалам. Все записи
взяты из открытых общедоступных источников и являются собственностью их авторов.