Przekazywanie listy obiektów do metody kontrolera MVC przy użyciu jQuery Ajax

Usiłuję przekazać tablicę obiektów do metody kontrolera MVC przy użyciu funkcji ajax () jQuery. Gdy dostanę się do metody kontrolera C # PassThing (), argument „things” ma wartość NULL. Próbowałem tego, używając argumentu typu listy, ale to też nie działa. Co ja robię źle?

<script type="text/javascript">
    $(document).ready(function () {
        var things = [
            { id: 1, color: 'yellow' },
            { id: 2, color: 'blue' },
            { id: 3, color: 'red' }
        ];

        $.ajax({
            contentType: 'application/json; charset=utf-8',
            dataType: 'json',
            type: 'POST',
            url: '/Xhr/ThingController/PassThing',
            data: JSON.stringify(things)
        });
    });
</script>

public class ThingController : Controller
{
    public void PassThing(Thing[] things)
    {
        // do stuff with things here...
    }

    public class Thing
    {
        public int id { get; set; }
        public string color { get; set; }
    }
}

questionAnswers(11)

yourAnswerToTheQuestion