Cómo enviar un objeto json anidado a un controlador mvc usando ajax

Estoy trabajando en una aplicación MVC de ASP.NET. Tengo el siguiente modelo de vista en c #:

public class ContactModel
{
    public string Address { get; set; }
    public string City { get; set; }
    public string State { get; set; }
}

public class PersonModel
{
    public ContactModel Contact;

    public PersonModel()
    {
        Contact = new ContactModel();
    }

    public string FirstName { get; set; }
    public string LastName { get; set; }
    public string Profession { get; set; }
}

Ahora tengo el mismo modelo json en el lado del cliente que quiero publicar en el servidor. Estoy usando siguiente ajax jquery:

$.ajax({
    url: "address to controller",
    type: "post",
    data: JSON.stringify(data),
    contentType: "application/json",
    success: function () {
        alert("data saved successfully");
    }
});

Pero solo las propiedades de PersonModel se asignan, pero las propiedades de contacto son nulas. ¿Alguien por favor me puede decir lo que me falta?