【发布时间】:2014-11-17 10:41:40
【问题描述】:
我终于尝试使用 KnockoutJS。我探索了将 JSON 数据发送到 MVC 4 中的 C# 方法的更短方法,但最终改用 AJAX 方法。我对以下内容有些困惑,希望有人能提供帮助。
Javascript
var VM = function () {
var self = this;
self.ValidateAndCreate = function () {
console.log("entered");
var a = {
b: "1",
c: "2",
d: {
e: "3"
}
};
var input = { data: a }
console.log(JSON.stringify(input));
$.ajax({
url: '/McAfee/ValidateAndCreatePartner',
data: JSON.stringify(input),
type: 'POST',
contentType: 'application/json; charset=utf-8',
dataType: 'json',
success: function (result) {
console.log('success');
}
});
}
}
var viewModel = new VM();
ko.applyBindings(viewModel);
C#
[HttpPost]
public void ValidateAndCreatePartner(string data)
{
var x = JsonConvert.DeserializeObject(data);
RedirectIfSuccess();
}
当前发生的是ValidateAndCreatePartner 触发,但参数data 为空,随后NewtonSoft.Json.JsonConvert.DeserializeObject 结果失败。我该如何解决这个问题?
【问题讨论】:
-
我已经一年多没有用 JSON 做任何事情了,我也无法访问我的旧源代码 - 我觉得我缺少一些基本的东西
标签: c# javascript ajax json knockout.js