Post Array en tant que JSON au contrôleur MVC

J'ai eu du mal à trouver une solution à ce problème.

Dans mon code, je fais construire un tableau d'un objet;

var $marks = [];

var mark = function ( x, y, counter ){
    this.x = x;
    this.y = y;
    this.counter = counter;
}

$marks.push(new mark(1, 2, 0));   
$marks.push(new mark(1, 2, 1));
$marks.push(new mark(1, 2, 2));

Maintenant, je veux afficher ces données à un contrôleur MVC, donc je pense que le type de données dans le contrôleur serait un List<Mark> Marks ou un tableau de Marques.

Pour afficher les données, j'ai essayé;

var json = JSON.stringify($marks);
$.post('url', json).done(function(data){ /* handle */ });

OU

var json = { Marks: $marks };
$.post('url', json).done(function(data){ /* handle */ });

La deuxième façon, lorsque l'on regarde les données affichées, ressemble à ce

Marks[0][x]: 1
Marks[0][y]: 2
Marks[0][counter]: 0
Marks[0][x]: 1
Marks[0][y]: 2
Marks[0][counter]: 1
Marks[0][x]: 1
Marks[0][y]: 2
Marks[0][counter]: 2

Mais je ne suis pas sûr de savoir comment le traduire dans un objet fortement typé dans le contrôleur?

Mon Contrôleur ressemble à ceci;

[HttpPost]
public ActionResult JsonSaveMarks(List<Mark> Marks){
    //handle here
}

Ma Marque de classe ressemble à ceci;

public class Mark{
     public string x { get; set; }
     public string y { get; set; }
     public string counter { get; set; }
}

J'ai lu à travers d'autres problèmes similaires sur la création d'une coutume JsonFilterAttributeou à l'aide de la Système.Web.Script.La sérialisation.JavaScriptSerializer classe, mais je ne peux pas obtenir quoi que ce soit pour le travail

Est là quelque chose d'évident, je suis absent ici? J'ai obtenu le Type de données dans le contrôleur complètement tort? Comment puis-je convertir ces données affichées dans un objet fortement typé?

Merci Beaucoup

source d'informationauteur Tim B James