Asp.net Маршрутизация 4.0, доступ к строке запроса в веб-формах

#asp.net #routing #asp.net-4.0 #webforms #asp.net-routing

#asp.net #маршруты #asp.net-4.0 #веб-формы #asp.net-маршрутизация

Вопрос:

У меня есть существующий Asp.net приложение веб-формы 4.0, которое использовало Asp.net маршрутизация 4.0. Теперь мне нужно добавить маршрут в мое приложение веб-формы. Но я не могу понять, как получить доступ к строке запроса на моей странице aspx.

Что я сделал, так это,

 routes.MapPageRoute("Products","Products/","~/WebPages/Products.aspx?pid=4",false)
  

После добавления этого фрагмента кода я ожидал, что
когда я просматриваю http:localhostmysiteProducts я должен быть перенаправлен на мою страницу Products.aspx и там я должен иметь возможность получить доступ к запросу.Строка запроса[«pid»].
Но я не могу получить доступ к строке запроса.

Я сомневаюсь, разрешено ли это в Asp.net Маршрутизация 4.0 для веб-форм. Как я могу выполнить свое требование?

Спасибо, M

Ответ №1:

Что-то вроде:

  routes.MapPageRoute("ProductssRoute",
    "Products/{*queryvalues}", "~/Products.aspx",
    false,
    new RouteValueDictionary 
        { { "pid", @"d{4}" }});
  

Смотрите http://msdn.microsoft.com/en-us/library/cc668177.aspx

Комментарии:

1. это сработает, только если при просмотре http:\localhostProducts2