Publicar datos JSON a través de un formulario en MVC4

Estoy tratando de POSTAR un objeto JSON (un modelo de eliminación directa de JSON, si eso tiene alguna relevancia) a mi controlador MVC, y hacer que el controlador devuelva una nueva vista. Para ello, estoy enviando los datos con un formulario. El problema es que me gustaría que el JSON se convierta automáticamente en un modelo cuando el controlador lo reciba.

Si tuviera que usar una llamada AJAX para esto,

var actionModel = new Object();
actionModel.Controls = ko.toJS(self.controls());
var json = JSON.stringify(actionModel);
$.ajax({
    url: "MyController/Preview",
    type: "POST",
    contentType: 'application/json; charset=utf-8',
    cache: false,
    data: json,
    success: function (data) {
    }
});

... el objeto JSON se deserializa con éxito y se convierte en una instancia de mi clase modelo.

public ActionResult Preview(ActionModel actionModel) { ... }
public class ActionModel
{
    public List<ControlModel> Controls { get; set; }
}

Si quiero hacer esto con un formulario, entiendo que debo insertar el JSON en un campo de entrada oculto, pero lo mejor que puedo administrar al hacer esto es recibir los datos como una cadena serializada:

@using (Html.BeginForm("Preview", "MyController", FormMethod.Post, new { id = "previewForm" }))
{
    <input type="hidden" id="hiddenFieldName" />
}

public ActionResult Preview(string hiddenFieldName) { ... }

Luego podría deserializarlo, pero realmente lo preferiría si MVC pudiera convertirlo para mí, como lo haría con una llamada AJAX. es posible?

Gracias.

Respuestas a la pregunta(2)

Su respuesta a la pregunta