Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/273.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在通过json传递值列表或数组时面临问题_C#_Javascript_.net_Json_Asp.net Web Api - Fatal编程技术网

C# 在通过json传递值列表或数组时面临问题

C# 在通过json传递值列表或数组时面临问题,c#,javascript,.net,json,asp.net-web-api,C#,Javascript,.net,Json,Asp.net Web Api,场景 我通过json将数组列表传递给api方法。调用成功,当我们看到列表时,它会显示已传递对象数的计数,但未设置对象内的值。请帮助 我的目标: var datavalue = [{ BeerId: 1, BeerName: "KingFisher", XCoordinates: 45, YCoordinates: 56 }, { BeerId: 2, BeerName: "KingFi

场景

我通过json将数组列表传递给api方法。调用成功,当我们看到列表时,它会显示已传递对象数的计数,但未设置对象内的值。请帮助

我的目标:

var datavalue = [{
        BeerId: 1,
        BeerName: "KingFisher",
        XCoordinates: 45,
        YCoordinates: 56
    },
    {
        BeerId: 2,
        BeerName: "KingFisher(Strong)",
        XCoordinates: 47,
        YCoordinates: 58
    }];
我的json调用:

 $.ajax({ //actually approve or reject the promotion
        url: 'api/BeerAppGroup/GetRegistered',
        type: "POST",
        data: JSON.stringify(datavalue),
        contentType: "application/json; charset=utf-8",
        success: function (data) {
}});
我的api方法:

[EnableCors("*", "*", "GET, POST")]
        [HttpPost]
        public IHttpActionResult GetRegistered(List<UserBeerDetailContact> datavalue)
        {
            BeerAppUserClass beerAppDal = new BeerAppUserClass();
            return Json(new KeyValuePair<String, String>("IsRegistered", ""));

        }
名单上有第二条。但是每个对象中的值都是null

请帮助如何获取其中的值

            var invoiceObj = {};
            invoiceObj["InvoiceId"] = 0;
            invoiceObj["BuyerName"] = $("#txtByerName").val();
            invoiceObj["BuyerEmail"] = $("#txtByerEmail").val();
            invoiceObj["InvoiceNumber"] = $("#txtInvoiceNo").val();
            invoiceObj["InvoiceDate"] = $("#txtInvoiceDate").val();
            invoiceObj["InvoiceDueDate"] = $("#txtInvoiceDueDate").val();
            invoiceObj["InvoiceCurrency"] = $("#ddlCurency").val()
            invoiceObj["Reference"] = $("#txtRef").val();
            invoiceObj["InvoiceTotal"] = Total;

JSON.stringify(invoiceObj),

尝试使javascript对象与上述代码类似,然后使用JSON对象将其字符串化

api方法
GetRegistered
对参数
dataValue
完全不起作用。您正在创建BeerAppUserClass的实例,但从未对其执行任何操作。您正在返回一个
新的KeyValuePair(“IsRegistered”,”)
,空引号表示您没有设置
KeyValuePair
值。请在返回时包含
UserBeerDetailContact
BeerAppUserClass
的定义。我将使用该对象,我没有共享逻辑部分。只是我没有得到列表中的值,尽管它显示了正确的计数。。
            var invoiceObj = {};
            invoiceObj["InvoiceId"] = 0;
            invoiceObj["BuyerName"] = $("#txtByerName").val();
            invoiceObj["BuyerEmail"] = $("#txtByerEmail").val();
            invoiceObj["InvoiceNumber"] = $("#txtInvoiceNo").val();
            invoiceObj["InvoiceDate"] = $("#txtInvoiceDate").val();
            invoiceObj["InvoiceDueDate"] = $("#txtInvoiceDueDate").val();
            invoiceObj["InvoiceCurrency"] = $("#ddlCurency").val()
            invoiceObj["Reference"] = $("#txtRef").val();
            invoiceObj["InvoiceTotal"] = Total;

JSON.stringify(invoiceObj),