Создайте маршрут, который переместит строку запроса в часть URL - PullRequest
1 голос
/ 29 января 2011

Я бы хотел изменить свои маршруты, чтобы вместо:

/Users/Edit?UserID=1

Я могу сделать

/Users/Edit/1

Как мне создать собственный маршрут для этого?

Кроме того, кто-то может направить меня к хорошему учебнику по маршрутам? Я не хочу создавать посты каждый раз, когда у меня возникает простая проблема с маршрутами.

Ответы [ 3 ]

2 голосов
/ 29 января 2011

На самом деле http://localhost/Users/Edit/1 может делать то, что вы хотите, без определения нового маршрута. Структура маршрута по умолчанию http://localhost/controllerName/actionMethodName/id.

Так что, если вы просто используете «id» вместо «UserID» в вашем методе действия. Число в URL-адресе будет присвоено параметру в действии.

public ActionResult Edit(int id)

Вот несколько уроков по маршрутизации. Посмотри на них. Это довольно легко понять.

0 голосов
/ 29 января 2011

Вы захотите сделать что-то вроде этого:

        routes.MapRoute(
            "MyRoute",
            "{controller}/{action}/{UserId}",
            new { controller = "DefaultController", 
                                  action = "DefaultAction", 
                                  UserId = UrlParameter.Optional }
        );
0 голосов
/ 29 января 2011

Вы захотите использовать файл htaccess.Вы вставляете регулярное выражение, которое извлекает части пути к файлу, как если бы оно было частью строки запроса.

Это ссылка, которую я нагуглил , она может помочь.

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