Here is my array:
{latlng: [{lat: 41.9841092242239, lng: -87.6459866168}, {lat: 41.948650308164744, lng: -87.64431828280067}, {lat: 41.94833112697515, lng: -87.644017875391}]
Here is my javascript code:
var postedData = JSON.stringify({
latlng: boundaries
});
alert("here are your boundaries so far : " + postedData);
$.ajax({
url: '/Communities/UpdateBoundaries',
type: "POST",
traditional: true,
contentType: "application/json",
data: postedData,
datatype: "json",
success: function () {
console.log('success!!');
}
});
}
and here is my controller: where boundaries is my incoming array of latlng, but it is coming in null.
[HttpPost]
public ActionResult UpdateBoundaries(List<latLng> boundaries)
{
return View();
}
Change
var postedData = JSON.stringify({latlng: boundaries});
to
var postedData = JSON.stringify(boundaries);
This is because the action parameter is an array. If it were a type that contained an array property with property name latlng then you pass it in the same manner you did in your existing code.