C# 对ASP.NET Web服务的AJAX请求-使用哪种参数类型?
我有一个JSON对象数组,其中一些包含键/值对,其值是数组 例如:C# 对ASP.NET Web服务的AJAX请求-使用哪种参数类型?,c#,jquery,asp.net,ajax,json,C#,Jquery,Asp.net,Ajax,Json,我有一个JSON对象数组,其中一些包含键/值对,其值是数组 例如: var jsonArray = [{ "key1":"value1", "key2":["value21", "value22"]}, { "key1":"value3", "key2":["value41", "value42"]}]; 编辑:意外使用大括号而不是括号 我正在尝试使用jQuery通过AJAX将其发送到ASP.NET web服务: $.ajax({ type: "pos
var jsonArray = [{ "key1":"value1", "key2":["value21", "value22"]},
{ "key1":"value3", "key2":["value41", "value42"]}];
编辑:意外使用大括号而不是括号
我正在尝试使用jQuery通过AJAX将其发送到ASP.NET web服务:
$.ajax({
type: "post",
url: "example.asmx/SomeFunction"
data: "{ 'items': '" + JSON.stringify(jsonArray) + "' }",
contentType: "application/json;charset=utf-8",
dataType: "json"
});
这是发送数据的正确方式吗?另外,我在SomeFunction
参数中需要什么数据类型来接受和解析JSON数据
这是发送数据的正确方式吗
不,以下情况会更好:
$.ajax({
type: "post",
url: "example.asmx/SomeFunction"
data: JSON.stringify({ items: jsonArray }),
contentType: "application/json;charset=utf-8",
dataType: "json"
});
另外,在SomeFunction参数中我需要什么数据类型来接受和解析JSON数据
它将映射到:
public void SomeFunction(IEnumerable<Foo> items)
{
...
}
在我的示例中,我使用了
IEnumerable
,因为我假设您将只对值进行枚举,但是如果您需要索引器,您还可以将它们定义为数组T[]
,这非常有帮助。非常感谢。
public class Foo
{
public string Key1 { get; set; }
public IEnumerable<string> Key2 { get; set; }
}