1

我有一个 JavaScript 对象,所以我想发送到 C#(问题在底部)

var data = {
    mykey1: "somevalue",
    mykey2: "somevalue2",
    addProducts: [
        {
            id: 1,
            quantity: 3,
            variation: 54
        },
        {
            id: 2,
            quantity: 5,
            variation: 23
        }
    ]
}

它是将单个产品或多个产品添加到用户购物篮中。我想发回一组对象..

我可以使用 Javascript 访问它

data.addProducts[1].id

使用以下...

$.ajax({
    url: "/ajax/myurl",
    data: data,
    dataType: "json",
    type: "GET",
    success: function( response ){
        // Data returned as JSON
    }
});

它正在发送这样的数据(为您的阅读乐趣进行了 URL 解码)

?mykey1=somevalue&mykey2=somevalue2&addProducts[0][id]=1&addProducts[0][quantity]=3&addProducts[0][variation]=54&addProducts[0][id]=2&addProducts[0][quantity]=5&addProducts[0][variation]=23

我的问题是......不使用JSON.stringify数据,它只会将其作为完整对象发送到 url/ajax/myurl/{mykey1:1 ...}

如何从 C# 读回这些信息?jQuery 只是将其编码为标准方式,我是否应该对此做任何其他事情,是否有一种内置方式可以在 C# 中获取这些数据?

4

1 回答 1

0

var strValue = $(getStringValue);
var intValue = $(getIntValue)
$.ajax({
type: \"post\",
url: \"default.aspx/getData\",
data: \"{\'postedAjaxStringValue\"\': \'\" + encodeURIComponent(strValue) + \"\', postedAjaxIntValue: \" + encodeURIComponent(intValue ) + \"}\",
contentType: \"application/json; charset=utf-8\",
dataType: \"json\",
success: OnSuccess,
failure: function (response) {
error: function (response) {
});

//ON C# KodeBehind..

[System.Web.Services.WebMethod]
public static string getData(string postedAjaxStringValue, int postedAjaxIntValue){}
于 2018-10-18T09:54:46.033 回答