【问题标题】:Passing array Using Jquery Ajax to asp.net C# Controller使用 Jquery Ajax 将数组传递给 asp.net C# 控制器
【发布时间】:2021-07-01 09:12:52
【问题描述】:

怎么了?

所以我在 UI 端有一个数组,想将它发送到控制器的操作。 这是我的数组:

var data = [
            {
                "receipt": {
                    "Service": "Saab",
                    "Order": "20"
                }
            },
            {
                "receipt": {
                    "Service": "Volvo",
                    "Order": "12"
                }
            },
            {
                "receipt": {
                    "Service": "BMW",
                    "Order": "25"
                }
            }
        .
        .
        .
        .
        .
        ]

数组长度可以是 100 或只有 1,因此管理数据变量中所有可用的详细信息非常重要。

我想通过 ajax 将此数组发送到控制器,并在可以使用和管理数据的服务器端捕获它们。我已经阅读了所有类似的问题,但没有帮助...

请帮帮我,这个问题困扰了我超过 3 周。

我使用了这样一个 JQuery Ajax 的简单语句:

     $.ajax({
            type: "POST",
            dataType: "Json",
            contentType: "application/json; charset=utf-8",
            data: data,
            url: "api/Receipt",
            success: function (result) {
                // To Do
                console.info(result);
            },
            error: function (result) {
                console.info(result);
            }
        });

在服务器端我试过这个:

          [WebMethod]
    public IEnumerable<R> Receipt_Turn([FromBody] Object r)
    { }

我这里有数据但是不能用???

非常感谢;)

【问题讨论】:

  • 告诉我们你尝试了什么?
  • 这听起来像是有人在询问他们学校作业的答案,但没有尝试或提供他们自己尝试过的任何工作示例。这不是 Stack Overflow 的用途...
  • 不,这是为了从 2 个或更多服务之间的市场获取订单。就像你有 5 种面包的面包店。我想要你拥有的每种类型的 10 个单位。我不想在 JS 文件中计算价格,因为它不安全,所以我尝试使用 api 来获取收据详细信息并返回带有收据字符串的计算价格。如果您知道方法,请帮助我,因为经过 3 周的尝试和搜索,我意识到我无法单独处理这部分...@haag1
  • 我用您向@sagi 询问的信息更新了我的问题

标签: javascript c# asp.net ajax asp.net-web-api


【解决方案1】:

这完全取决于您的 api 如何接收您的数据。

可能是:-

JSON.stringify(data);

{ string_name : JSON.stringify(data); }

两者都在身体上。注意:这里的 string_name 是在 api 端声明的示例。

【讨论】:

  • 请给我你认为更适合我情况的代码。 Ajax 语句和 api Gate 。以您认为更好的方式发送它并以您认为标准的方式捕获它们,我会遵循...@Toxy
  • 我更新了我的问题,请看@Toxy
  • 分享我整个 api 课程。您更新的问题没有一点帮助,至于您的第一条评论,标准方法是 $.ajax({type: "POST", .....data: JSON.stringify(data);, url: "api/Receipt",....}); 但您必须相应地设置 api 才能接收
  • 你好。我创建了一个新问题,其中包含有关我的问题的完整信息。请看一下。 link 。 @Toxy
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-09-10
  • 2016-03-01
  • 1970-01-01
  • 2011-07-27
相关资源
最近更新 更多