I am using razor and I'm having a hard time passing an array to a controller. the array contains objects that I made and I am trying to do this:
$.ajax({
type: "POST",
url: "HomePage/HandleOperations",
data: JSON.stringify(operationCollection),
success: function (data) { alert("SUCESS");},
dataType: "json",
contentType: "application/json"
});
and my controller is:
public void HandleOperations(List<string> operationCollection)
{
}
I am not required to use ajax but I am not sure how else it could be done. In the controller it shows that the "operationCollection" contains elements but they are all null.
Add "traditional:true" parameter in your ajax.
Example:
the Ajax parameter
will do the trick.
Client side:
and declare a class server side like this:
then you can have this action:
Usage of the traditional: true parameter for an ajax call:
To help radbyx, using the "traditional: true" property of an ajax call, like the following, will tell ajax to use the traditional form of serialization. More details: http://api.jquery.com/jQuery.param/ or What is "traditional style of param serialization' in JQuery.