ajax 给mvc控制器传json,将Json数据传递给MVC控制器 - 操作方法的JObject参数

我将json数据传递给简单控制器(MVC控制器)的动作方法。以下是供参考的示例代码。

JS代码:

VAR JSON = {IsInit:真,SearchParam:{类型: “XX”,名称: “XX”,排序: “”}};

Nx$(document).ready(function() {

Nx$.ajax({

async: true,

contentType: "application/json; charset=utf-8",

type: "POST",

url: "Home/Data",

dataType: "json",

data: JSON.stringify(json),

success: function (msg) {

alert('success');

},

error: function (jqxhr, textStatus, error) {

alert('fail');

}

});

操作方法:现在

Function GetData(ByVal IsInit As Boolean, ByVal SearchParam As Newtonsoft.Json.Linq.JObject) As ActionResult

Return Nothing

End Function

,以上动作完全不来电。但是如果你使用下面的代码,那么它会调用,但SearchParam只是[object]类型,你不能使用任何searchParam对象的值。

Public Function GetData(ByVal IsInit As Boolean, ByVal SearchParam As Object) As Object

Return Nothing

End Function

我认为它不能在POST请求中传递多个参数与复杂的json对象。

如何获取传递给MVC控制器的操作方法的JSON数据,以便SearchParam Json数据转换为JObject它自己。即应该使用初始的第一个Action方法签名,而不使用任何主要的方法签名更改。

很少观察:

如果我接通上述操作方法作为API控制器API;它开始工作,但说你需要按照下面的方法签名。下面的方法不适用于MVC控制器。不知道为什么?但是,由于某种原因,我不能使用API​​控制器。

Function GetData(ByVal req As Newtonsoft.Json.Linq.JObject) As ActionResult

Return Nothing

End Function

谢谢!

+0

数据:JSON.stringify(json),正在将数据转换为字符串。我建议你删除dataType:“json”,在阿贾克斯params –

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值