微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何将 List<T> 从 JS 传递到 API

如何解决如何将 List<T> 从 JS 传递到 API

我有以下模型和控制器。我想知道如何通过 Ajax 调用为 API 传递值

型号:

Public Class Data
{
  public int ID {get;set;}
  public string Title {get;set;}
}

控制器:

[HTTPPOST]
public string UpsertItems(List<Data> Inputs)
{
 try
  {...}
 catch(Exception ex)
  {..}
}

从前端,我需要将以下数据传递给 API。

我尝试传递如下数据

var datacoll='{{"ID":1,"Title":"a"},{"ID":2,"Title":"b"}}'

如果我按原样传递变量 datacoll,我会收到 500 内部错误,如果我在控制器中传递 JSON.Stringify(datacoll),我会收到空​​值。

Ajax 方法

$.ajax({
  url: '/Test/UpsertItems',method: 'POST',dataType: 'text',contentType: 'application/json; charset=utf-8',data: datacoll,success: function (data) {..},error: function (jqXHR) {..},});

请告诉我它有什么问题。

解决方法

看起来您的数据需要是一个列表,请注意方括号。

var datacoll='[{"ID":1,"Title":"a"},{"ID":2,"Title":"b"}]'

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。