У меня есть мой контроллер, который может отправить объект json и снова получить тот же объект. Моя проблема в том, что AjaxSaveFoo создает объект Foo, но я всегда возвращаю пустой объект. Как создать десериализацию ?Deserialization with Newtonsoft.Json
/// <summary>
/// Returns a foo
/// </summary>
/// <returns></returns>
public JsonNetResult AjaxLoadFoo()
{
return new JsonNetResult
{
Data = new Foo()
};
}
/// <summary>
/// Saves a foo
/// </summary>
/// <returns></returns>
public JsonNetResult AjaxSaveFoo(Foo foo) //who tries to deserialize this!!, its always empty
{
return new JsonNetResult
{
Data = foo
};
}
Мой клиент сторона ..
$.ajax({
type: "POST",
url: "AjaxSaveFoo",
data: JSON.stringify(this._FooObj),
success: this.saveSucces,
dataType: "json",
contentType: "application/json; charset=utf-8",
error: this.saveFailure
});
Foo, когда его послали вниз ..
{
"CustomerNumber": 2,
"CustomerStatus": "1"
}
Foo, когда его представили (POST)
{"CustomerNumber":2,"CustomerStatus":"1"}
Покажите нам объект Foo в JS и C#. В их определении, по-видимому, есть несоответствие. – Pradeep
Я нашел ошибку .... URL должен был быть AjaxSaveFoo/вместо AjaxSaveFoo. Это дало мне 301 с сервера (добавление /), но также привело к клиенту, использующему GET и, следовательно, не заполняющему данные. * Sigh * – Middy