Como receber JSON como um parâmetro do método de ação MVC 5
Durante toda a tarde, tentei rastrear a Web tentando receber um objeto JSON no controlador de ação.
Qual é a maneira correta e ou mais fácil de fazê-lo?
Eu tentei o seguinte: 1:
//Post/ Roles/AddUser
[HttpPost]
public ActionResult AddUser(String model)
{
if(model != null)
{
return Json("Success");
}else
{
return Json("An Error Has occoured");
}
}
O que me deu um valor nulo na minha entrada.
2:
//Post/ Roles/AddUser
[HttpPost]
public ActionResult AddUser(IDictionary<string, object> model)
{
if(model != null)
{
return Json("Success");
}else
{
return Json("An Error Has occoured");
}
}
o que me dá um erro 500 no lado do jquery que está tentando postar nele? (o que significa que não foi vinculado corretamente).
Aqui está o meu código jQuery:
<script>
function submitForm() {
var usersRoles = new Array;
jQuery("#dualSelectRoles2 option").each(function () {
usersRoles.push(jQuery(this).val());
});
console.log(usersRoles);
jQuery.ajax({
type: "POST",
url: "@Url.Action("AddUser")",
contentType: "application/json; charset=utf-8",
dataType: "json",
data: JSON.stringify(usersRoles),
success: function (data) { alert(data); },
failure: function (errMsg) {
alert(errMsg);
}
});
}
Tudo o que eu quero fazer é receber meu objeto JSON na minha ação mvc?