Передача параметра в действие контроллера из Html.ActionLink

Что-то не так с этим html? Я хочу иметь ссылку на главной странице для перехода к представлению «CreateParts». У меня есть действие CreateParts, у которого есть параметр parentPartId в контроллере PartList.

<li id="taskAdminPartCreate" runat="server">
                                    <%= Html.ActionLink("Create New Part", "CreateParts", "PartList", new { parentPartId = 0 })%></li>

Действие моего контроллера похоже на

public ActionResult CreateParts(int parentPartId)
    {
        HSPartList objHSPart = new HSPartList();
        objHSPart.Id = parentPartId;
        return View(objHSPart);
    }

Когда я нажимаю «Создать новую деталь» в меню SiteMaster, я получаю исключение. Пожалуйста, помогите мне выбраться из этого.

27
задан Suja Shyam 28 November 2011 в 09:39
поделиться

1 ответ

Вы используете неправильную перегрузку. Вы должны использовать эту перегрузку

public static MvcHtmlString ActionLink(
    this HtmlHelper htmlHelper,
    string linkText,
    string actionName,
    string controllerName,
    Object routeValues,
    Object htmlAttributes
) 

И правильный код будет

<%= Html.ActionLink("Create New Part", "CreateParts", "PartList", new { parentPartId = 0 }, null)%>

Обратите внимание, что дополнительный параметр в конце. Для других перегрузок посетите LinkExtensions.ActionLink Method . Как видите, нет перегрузки string, string, string, object, которую вы пытаетесь использовать.

63
ответ дан 28 November 2019 в 04:18
поделиться
Другие вопросы по тегам:

Похожие вопросы: