«Не удается разрешить действие» при частичном просмотре в общей области ASP.NET MVC - PullRequest
0 голосов
/ 02 ноября 2011

Я работаю над ASP.NET MVC3.У меня есть частичное представление RestaurantAdminNavigation.ascx, которое я переместил из Views/Restaurant Папка в Views/Shared Папка.

У меня есть ссылка действия в этом представлении

<%:Html.ActionLink("Edit", "Edit", "Restaurant", new { id=Model.OId }) %>

Она работала нормально, когда она находилась в папке Views/Restaurant, но после перемещения в папку Views/Shared,если я сохраняю параметры как часть этой ссылки действия, она показывает ошибку «Не удается разрешить редактирование действия».Но если я сохраню

<%:Html.ActionLink("Edit", "Edit", "Restaurant") %>

, это не покажет мне ошибку.

После поиска в Google я понимаю, что причиной может быть регистрация маршрутов.Мне нужно зарегистрировать маршрут в файле Global.ascx, но я не могу понять, что я должен кодировать, если это решение.

1 Ответ

6 голосов
/ 02 ноября 2011

Вы используете неправильную перегрузку помощника ActionLink:

<%= Html.ActionLink(
    "Edit",                  // linkText
    "Edit",                  // actionName
    "Restaurant",            // routeValues
    new { id = Model.OId }   // htmlAttributes
) %>

А вот правильный :

<%= Html.ActionLink(
    "Edit",                  // linkText
    "Edit",                  // actionName
    "Restaurant",            // controllerName
    new { id = Model.OId },  // routeValues
    null                     // htmlAttributes
) %>
...