Нужна помощь по маршрутизации ASP.NET MVC - PullRequest
2 голосов
/ 26 сентября 2008

Я недавно начал работать с ASP.NET MVC, читая блоги, учебные пособия, пробуя некоторые маршруты и т. Д. Теперь я наткнулся на проблему, в которой мне нужна помощь.

По сути, у меня есть URL, например /products.aspx?categoryid=foo&productid=bar

Большинство уроков / примеров предлагают сопоставить это с чем-то вроде: / products / category / foo / bar, где «products» - контроллер, «category» - действие и т. Д.

Но мне нужно сопоставить его с / products / foo / bar. (без «категории»)

Возможно ли это? Я что-то пропустил? Помощь будет высоко оценена. Заранее спасибо:)

P.S. Извините за мой плохой английский.

Ответы [ 2 ]

5 голосов
/ 26 сентября 2008

(ваш английский просто в порядке, не нужно извиняться!)

Вы можете определить маршрут следующим образом:

routes.MapRoute("productsByCategory", "products/{category}/{productid}",
  new { controller="products", action="findByCategory" })

Это будет соответствовать

products/foo/bar и вызовите действие, похожее на это:

public class ProductsController : Controller
{
   ...

   public ActionResult FindByCategory(string category, string productid)
   {
          ....
   }
}

это помогает?

0 голосов
/ 26 сентября 2008

Вы также можете подумать о создании контроллера для проверки ваших пользовательских маршрутов ...

Проверьте Запись в блоге Стивена Вальтера об этом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...