мне нужен этот адрес http://localhost:53249/Admin/EditPosts/1/Edit
, но, к сожалению, им получать строку запроса в URL, как этот http://localhost:53249/Admin/EditPosts?id=1&operation=Edit
ActionLink показать параметры в URL вместо строк запроса MVC
Это мой ActionLink (якорный тег)
<td>@Html.ActionLink(@posts.Title, "EditPosts", "Admin", new { id = posts.id, operation="Detail" }, null)</td>
Это мой маршрут config:
public static void RegisterRoutes(RouteCollection routes)
{
//routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapMvcAttributeRoutes();
routes.MapRoute(
name: "Admin",
url: "Admin/EditPosts/{id}/{operation}",
defaults: new { controller = "Admin", action = "EditPosts"}
);
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
}
Благодаря @guilherme, но после того, что я получаю URL как этот HTTP: // локальный: 53249/администратора/Сообщения/1/Сообщения ? operation = Edit –
Попробуйте с ссылкой на действие: @ Html.ActionLink (@ posts.Title, "Edit", "Posts", new {id = posts.id}, null) – Guilherme
, но у меня есть 2 параметра first один - это id, а второй - операция (редактировать, детали) –