Я пробовал решения по аналогичным вопросам, но не добился успеха.Я передаю объект jQuery из строк массива в действие контроллера MVC5.Если я укажу параметр действия в виде строки, он получит значение, но параметр будет нулевым.Если я указываю параметр в виде списка, а структура массива jquery совпадает со структурой списка, я получаю ошибку сервера 500.Я пробовал тип данных, тип контента и т. Д., Как и в других сообщениях на SO, но безуспешно.
Может кто-нибудь, пожалуйста, помогите.
Структура списка:
public class ActionPermission2
{
public int ID = 0;
public int FKMenuID = 0;
public string ActionName = "";
public string Allowed = "";
public int PermissionType = 0;
public int PermissionTypeID = 0;
}
Попытка метода действия (одна в виде списка actionPermissions, а другая в виде строкового массива:
public ActionResult UpdateModel2(List<ActionPermission2> menuPermissionsModel)
{
return Json(true, JsonRequestBehavior.AllowGet);
}
public ActionResult UpdateModelSA(string[] menuPermissionsModel)
{
return Json(true, JsonRequestBehavior.AllowGet);
}
JS и jQuery:
$('input[type=checkbox]').each(function ()
{
var datarow = {
"ID": pId,
"FKMenuID": mId,
"ActionName": actionName,
"Allowed": checked,
"PermissionType": "",
"PermissionTypeID": ptId
};
jsonObj.push(datarow);
}
});
$.ajax({
type: "POST",
//url: "@Url.Action("Update")", //string[] menuPermissionsModel
url: "@Url.Action("UpdateModel2")", //List<ActionPermission2> menuPermissionsModel
//url: "@Url.Action("UpdateModelSA2")", //List<string> menuPermissionsModel
data: JSON.stringify({ 'menuPermissionsModel': jArray }),
traditional: true,
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (data)
{
alert('data: ' + data);
},
error: function (data)
{
alert("error");
console.log(data);
}
});
при направлении вызова ajax в списокparam, .. есть все записи, но все они показывают значения по умолчанию в соответствии с классом, в котором он построен, т.е. т.е. без данных.
Edit2: Data ex console.log.
[{"ID":"0","FKMenuID":"38","ActionName":"Read","Allowed":false,"PermissionType":"","PermissionTypeID":"0"},
{"ID":"0","FKMenuID":"38","ActionName":"Create","Allowed":false,"PermissionType":"","PermissionTypeID":"0"},
{"ID":"0","FKMenuID":"38","ActionName":"Update","Allowed":false,"PermissionType":"","PermissionTypeID":"0"},
{"ID":"0","FKMenuID":"38","ActionName":"Delete","Allowed":false,"PermissionType":"","PermissionTypeID":"0"},
{"ID":"0","FKMenuID":"65","ActionName":"Read","Allowed":false,"PermissionType":"","PermissionTypeID":"0"},
{"ID":"0","FKMenuID":"65","ActionName":"Create","Allowed":false,"PermissionType":"","PermissionTypeID":"0"},
{"ID":"0","FKMenuID":"50","ActionName":"Delete","Allowed":false,"PermissionType":"","PermissionTypeID":"0"},
{"ID":"0","FKMenuID":"67","ActionName":"Read","Allowed":false,"PermissionType":"","PermissionTypeID":"0"},
{"ID":"0","FKMenuID":"67","ActionName":"Create","Allowed":false,"PermissionType":"","PermissionTypeID":"0"},
{"ID":"0","FKMenuID":"67","ActionName":"Update","Allowed":false,"PermissionType":"","PermissionTypeID":"0"},
{"ID":"0","FKMenuID":"67","ActionName":"Delete","Allowed":false,"PermissionType":"","PermissionTypeID":"0"}]
![enter image description here](https://i.stack.imgur.com/nsHEL.png)