我试图通过JavaScript中的AJAX将一组数据传递给我的C#控制器。传递的数据并不总是相同的。完全没有创建/更新/删除系统,这完全是一个读操作。
我的对象如下:
values = {
Id: [SOME INT ID],
DB: [SOME DB ID],
Values: [{collection of values}]
}
这是我的ajax电话:
$.ajax({
url: "MYURL?" + encodeURIComponent(JSON.stringify(values)),
type: "GET",
success: function(data){
// do callback stuff
},
dataType: "json"
});
我的控制器是:
[HttpGet]
public ActionResult MyController(DataViewModel viewModel){
// Stuff and Things code
}
根本没有在viewModel的控制器中填充数据。所有值都为null。如何将JSON数据传递到控制器?提前谢谢。
答案 0 :(得分:2)
您的ajax调用应该是以下内容:
$.ajax({
url: "MYURL",
type: "GET",
success: function(data){
// do callback stuff
},
data: values
});
您的代码中存在的一些问题包括您在url:
行末尾使用分号而不是逗号而dataType:
设置了响应数据类型(而不是请求数据类型) ,发送到服务器)。