MVC 3 AJAX Post, lista preenchida com objetos, mas as propriedades dos objetos estão vazias
Eu tenho o seguinte problema:
Em um Button-Click eu POSTAR alguns dados para o servidor. Meu controlador Action parece com isso:
public ActionResult Accept(List<MyViewModel> entries)
{
//here entries HAS 2 MyViewModel-Instances in it.
//The entries are not null, but the values of the instances are!
//entries[0].ParamA is null
}
Onde o MyViewModel se parece com isto:
public class MyViewModel
{
public string ParamA { get; set; }
public string ParamB { get; set; }
}
E o AJAX-Call é o seguinte:
var myEntries = { entries: [{ ParamA: "A", ParamB: "B" }, { ParamA: "C", ParamB: "D" }] };
$.ajax({
type: 'POST',
url: url,
cache: false,
data: myEntries,
dataType: 'text' });
O que eu já tentei fazer:
DataType alterado para 'json'usado: tradicional: truetentou var myEntries = JSON.stringify (...);try var myEntries = {entradas: [JSON.stringify ({...}), JSON.stringify ({...})]};mesmo que acima, mas com jQuery.param (..., true);Uso de IEnumerable ou MyViewModel [] em vez da lista.QUALQUER combinação do acimaO que eu estou fazendo errado aqui?
Muito obrigado antecipadamente por me ajudar!
EDITAR
My (Razor) View não é interessante neste momento, pois não tem nada a ver com nada. Eu não estou usando qualquer um dos métodos HTML.TextBoxFor (ou similar) para preencher a variável myEntries. Na verdade, é preenchido dinamicamente (porque existem muitas condições). Para o bem da questão (e do meu próprio teste), codifiquei a variável. :)