Как отправить два параметра через jQuery в MVC Action с помощью помощника Url.Action - PullRequest
0 голосов
/ 30 мая 2018

Я работал над проектом MVC4 C #, и в моем представлении Razor необходимо отправить два параметра конкретному действию MVC при нажатии соответствующей кнопки. Я решил использовать jQuery для отправки этих двух параметров.

Это код в событии щелчка:

$('#salir').click(function () {
    window.location.href = '@Url.Action(actionName: "MostarOrdenInicioEmpleados", controllerName: "Home", new { id = Convert.ToString(Model.num_doc), grupo= Convert.ToInt32(Model.grupo)})';
});

, и это контроллер, в который мне нужно отправить два параметра:

[HttpGet]
[Authorize]
public ActionResult MostarOrdenInicioEmpleados(string id, Int32 grupo)

Но этоошибка в представлении Razor:

enter image description here

Текст ошибки:

Спецификации именованных аргументов должны появляться после того, как все фиксированные аргументы имеютбыло указано

Подскажите, пожалуйста, в чем проблема?

Ответы [ 2 ]

0 голосов
/ 30 мая 2018

Вы использовали два именованных аргумента (с actionName: и controllerName: до . Вы использовали фиксированный (т.е. безымянный, специально позиционированный) аргумент (в данном случае это ваш аргумент, начинающийся сnew, который вы не назвали), тогда как ошибка говорит о том, что вы можете поставить только именованные аргументы после фиксированных.

Так что либо

a) изменитепорядок аргументов, поэтому имена являются последними

b) назовите все аргументы, или

c) не назовите ни один из аргументов и убедитесь, что они находятся в ожидаемомзаказ.

0 голосов
/ 30 мая 2018

Это просто говорит: если вы предоставите именованные аргументы (в вашем случае, actionName:, controllerName:), они должны прийти после безымянного (или фиксированные аргументы).

В вашем случае вы можете просто исправить это, указав в качестве окончательного аргумента (routeValues) также именованный аргумент:

    window.location.href = '@Url.Action(actionName: "MostarOrdenInicioEmpleados", controllerName: "Home", routeValues: new { id = Convert.ToString(Model.num_doc), grupo= Convert.ToInt32(Model.grupo)})';
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...