![]() |
1
2
对于服务中的代码,需要为“foo”和“bar”使用对象而不是字符串。然后使用Newtonsoft.Json的函数解析将此对象转换为Json对象,然后构建强类型对象。
|
![]() |
2
1
我知道这是一个什么样的旧线程,但添加评论/洞察可能会有帮助(不仅对OP,但对其他人谁找到这个线程寻找答案)。 OP声明他的服务器端webmethod接收两个字符串foo和bar。他的客户端jquery.ajax(…)调用在对象({foo:…,bar:…)中创建他的两个参数。。。})正确的JSON.stringify就是这个对象。问题似乎是客户端、foo和bar本身就是具有两个属性(名称和年龄)的foo和具有三个属性(颜色、大小和数量)的bar的对象。然而,服务器端webmethod希望其foo和bar参数是字符串,而不是对象。我认为解决这个问题的正确方法是创建Foo和Bar类服务器端,让服务器端webmethod接收Foo和Bar作为Foo和Bar对象,而不是字符串。类似于:
|
![]() |
3
0
服务方法的签名不应该是
当然,据我所知,ASMX服务使用JavaScriptSerializer。您应该将WCF服务与webHttpBinding一起使用DataContractJsonSerializer。 |
![]() |
4
0
我知道这听起来很疯狂,但是尝试将web方法的响应格式设置为XML(response format.XML)。不知为什么这对我有效。 |
![]() |
5
0
您需要在json字符串中构造一个“request”元素,然后在不使用json.stringify的情况下将其传递给data元素。参见代码。
|
![]() |
code-geek · Jquery根据单选按钮选择隐藏或显示文本字段 4 月前 |
![]() |
Dr.0000FF · jQuery按钮点击不显示/隐藏内容 5 月前 |
![]() |
user28928120 · 如何在jquery中选择所有类? 5 月前 |
![]() |
Eliable · 使点击计数器和进度条协同工作 5 月前 |
![]() |
Jack Maessen · 在处理程序上使用时如何获取输入类型 6 月前 |