Проблема с Html.ActionLink, не включая параметры (MVC3) - PullRequest
7 голосов
/ 17 декабря 2010

У меня проблема с Html.ActionLink, который не дает мне ссылку, которую я ожидал.

Вот мой маршрут:

routes.MapRoute(
    "KnownCustomer", // Route name
    "{controller}/{action}/{custId}/{projId}", // URL with parameters
        new { controller = "Home", action = "Index" }, // Parameter defaults
    new { custId = @"\d+", projId = @"\d+" }
);

Вот мой вызов Html.ActionLink () "

@Html.ActionLink("Create New", "Create", "Conflict")

Вот URL-адрес страницы, на которой существует ActionLink: http://localhost:1283/Conflict/Index/1200/300 Вот результат вызова вышеуказанного Html.ActionLink () http://localhost:1283/Conflict/Create

Разве в вызов не должны входить другие параметры маршрута? Я ожидал, что http://localhost:1283/Conflict/Create/1200/300

Нужно ли передавать custId и projId в View и использовать перегрузку для предоставления значенийвручную?

1 Ответ

11 голосов
/ 17 декабря 2010

Вы не указали, что ссылка действия должна иметь какие-либо параметры, в этом случае это прямой URL-адрес действия.Вам необходимо включить параметры, т.е.

@Html.ActionLink("Create New", "Create", "Conflict", new { custID = Model.custID, projID  = Model.projID }, null)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...