当前位置: 首页 > 面试题库 >

如何在我的C#控制器中获取Ajax发布的数组?

郤瀚
2023-03-14
问题内容

我使用ASP.NET-MVC。我尝试在ajax中发布数组,但是我不知道如何在我的控制器中获取它。这是我的代码:

阿贾克斯

var lines = new Array();
lines.push("ABC");
lines.push("DEF");
lines.push("GHI");
$.ajax(
{
    url: 'MyController/MyAction/',
    type: 'POST',
    data: { 'lines': lines },
    dataType: 'json',
    async: false,
    success: function (data) {
        console.log(data);
    }
});

我的控制器

public JsonResult MyAction(string[] lines)
{
    Console.WriteLine(lines); // Display nothing
    return Json(new { data = 0 });
}

为什么我看不到台词?如何正确发布此数组并在MyAction中使用它?


问题答案:

设置contentType: "application/json"选项和JSON.stringify参数:

var lines = new Array();
lines.push("ABC");
lines.push("DEF");
lines.push("GHI");
$.ajax(
{
    url: 'MyController/MyAction/',
    type: 'POST',
    data: JSON.stringify({ 'lines': lines }),
    dataType: 'json',
    contentType: 'application/json',
    async: false,
    success: function (data) {
        console.log(data);
    }
});

如果在业务案例中有意义,您还可以设置要获取的对象的类型。例:

public JsonResult MyAction(string[] lines)
{
    Console.WriteLine(lines); // Display nothing
    return Json(new { data = 0 });
}

而且,您发送的内容更实用:

public class MyModel {
    string[] lines;
}

最后:

public JsonResult MyAction(MyModel request)
{
    Console.WriteLine(string.Join(", ", request.lines)); // Display nothing
    return Json(new { data = 0 });
}


 类似资料:
  • 问题内容: 我发送这样的短信 html标记 JavaScript代码 symfony2控制器代码 但为空… 我已经尝试通过Firefox HTTP请求测试器进行普通的发布请求(不是Ajax)。 控制器工作并具有价值。 所以我认为php代码还可以,但是Ajax方面存在问题 成功地调用’success:function’。 您如何获取javascript数据结构的内容? 问题答案: 首先,您无需访问控

  • 问题内容: 我正在尝试使用CodeIgniter开发我的项目的前端客户端。 但是带有CI的ajax使我感到困惑。 这是我的ajax: 和控制器: 现在,我可以通过数组索引获取帐户和密码,但是如何将接收到的数据转换为Object,这样我就可以获得属性: 谢谢! 问题答案: 更改您的ajax: 更改您的控制器: 希望这项工作对您有帮助…

  • 问题内容: 我想从变量“单击”中检索数据,以便可以在Flask的SQL查询中使用它。 jQuery查询 烧瓶/ Python 问题答案: 您可以这样在ajax请求中编写有效负载: 在烧瓶端点中,可以按以下方式提取值:

  • 问题内容: 我有一个Ajax POST发送到我的控制器之一。例如 查询>索引。 在Index()动作中,我返回JSON的ActionResult。 在进行登录检查时,我会执行一条if语句,并且如果activeUser的会话令牌为null,我会执行 但是,这不能正确重定向,而是以浏览器抱怨的JSON返回结果。 如何正确设置重定向,以便如果IF语句失败,它将转到登录页面,否则它将返回我需要的JSON结

  • 问题内容: 是什么区别 GET 和 POST 的 Ajax的 请求? 我看不到这两者之间的任何区别,除了当我使用 GET时 ,参数是在URL中发送的,这对我来说并没有任何区别,因为所有请求都是在后台进行的,并且用户找不到任何请求区别。 编辑:什么是 PUT 和 DELETE 方法? 问题答案: GET设计用于从服务器获取数据。POST(以及鲜为人知的朋友PUT和DELETE)设计用于修改服务器上的

  • 问题内容: 我从我的角度尝试了ajax帖子,如下所示(使用jQuery)。 在此处完成解决方案。 并在控制器中将其接收(始终调用该方法) 在这里建模,但是当我尝试访问(检查断点)对象的属性()时,它总是显示出价值。我试过不带字和带字。我现在和初学者都在学习MVC。请帮忙 问题答案: 之所以不起作用,是因为您使用的是ASP.NET MVC 2,直到ASP.NET MVC 3才添加对JSON的模型绑定