Я должен заранее признать, что я довольно новичок в MVC, я просматривал ресурсы по адресу www.asp.net/mvc, но мне было интересно, можете ли вы, ребята, чем-нибудь помочь мне.
Меня попросили создать версию ASP.NET для существующего веб-сайта PHP, на этом веб-сайте имеется огромное количество ссылок на него в определенном формате, которые я должен воспроизвести в связи с объемом работыизменить все существующие ссылки будет слишком много.
Формат существующих ссылок:
/([A-Za-z0-9]{14})/([A-Za-z0-9_-]*)
Моя попытка создать собственный маршрут не работает.Что я сделал, так это изменил метод RegisterRoutes в файле Global.asax.cs на:
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
"ExistingLink",
"{LinkId}/{Title}",
new {controller="ExistingLinkController", action="Index"},
new {LinkId = @"([A-Za-z0-9]{14})", Title = @"([A-Za-z0-9_-]*)"});
routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults
);
}
Я также создал 'ExistingLinkController' с действием 'Index';
public ActionResult Index(string LinkId, string Title)
{
ViewData["LinkId"] = LinkId;
ViewData["Title"] = Title;
return View();
}
И представление, содержащее код;
<h2>LinkId: <%: ViewData["LinkId"] %>
</h2>Title: <%: ViewData["Title"] %></h2>
Но когда я пытаюсь перейти к;
/ 55a3ef90c4b709 / Это-просто-тест_0-9
Я получаю следующую ошибку:
Описание: HTTP 404. Ресурс, который вы ищете (или одна из его зависимостей), мог быть удален, если бы егоимя изменено или временно недоступно.Просмотрите следующий URL и убедитесь, что он написан правильно.
Запрошенный URL: / 55a3ef90c4b709 / This-is-a-test_0-9
Мне было интересно,любой может увидеть, что я делаю неправильно, и, возможно, указать мне правильное направление, возможно, указав на фрагмент кода, который неправильный, если это простая проблема, или указав мне на статью, которая поможет мне лучше понять, если я получилнеправильный конец флешки с этим материалом для маршрутизации.
Спасибо за любую помощь заранее
Satal: D