Я пытаюсь создать проект ASP.NET MVC 4.5 для использования URL-адресов поисковой системы. Я использую следующее сопоставление маршрутов.URL-адрес маршрутизации требует/Главная страница/Страница? Page = 1 вместо/Главная/Страница/1
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}/{title}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional, title = UrlParameter.Optional }
);
Намерение состоит в том, чтобы я мог создать URL-адреса, как это:
Mysite.com/Home/Page/1/this-title-bit-is-just-for-show
но это не удается, и я должен использовать URL, как это:
Mysite.com/Home/Page?page=1
В случае имеет значение, контроллер действий, который указывает эта ссылка на ниже:
public ActionResult Page(int page)
{
PostModel pm = new PostModel(page);
return View(pm);
}
И я генерирующими URL, как это:
<a href="@Url.Action("Page", "Home", new { page = 1 })">1</a>
Может кто-нибудь сказать мне, где я идет не так?
Измените метод 'общественного ActionResult Page (интермедиат идентификатор)' или изменить маршрут к «url:» {controller}/{action}/{page}/{title} ",' И обратите внимание, что только последний параметр может быть помечен как 'UrlParameter.Optional' –
э-э ... вы задаете вопрос по теме с тегами? Это должно быть неправильно. Каким-то образом. – Will