【问题标题】:Returning multiple objects with a JSON result使用 JSON 结果返回多个对象
【发布时间】:2012-04-18 15:05:32
【问题描述】:

我想知道是否可以在 MVC 中返回多个带有 JSON 结果的对象。 目前我返回单个对象没有问题。

public ActionResult AddToBasket(int quantity, int productdetailid) 
{
    // more code here
    return Json ( new { Name = p.Product.Name, Price = p.Price});
}

这会在我的 ajax 调用中返回一个匿名对象。我想做的是返回多个名称和价格来填充我视图中的表格。

所以基本上我想在用户每次将商品添加到他的购物篮时更新(更新)cookie并更新作为html表格的购物篮。

提前致谢。

【问题讨论】:

  • 您是否尝试过使用object[]{ new {...}, new {...} }
  • 返回一个包含对象数组的 JSON 对象。但是,我无法为您提供特定的服务器端代码。
  • 这是什么编程语言?

标签: c# jquery asp.net-mvc json


【解决方案1】:

只返回一个对象数组,例如:

[ { Name: 'foo', Price: 123 }
, { Name: 'bar', Price: 456 }
, { Name: 'baz', Price: 789 } ]

【讨论】:

  • 这是正确的 JavaScript 语法,但在 C# 中,他在服务器端询问他是如何做到的,这与您的答案不同。
  • 没错,而且数据是动态的,所以我不知道我需要传递多少对象。
【解决方案2】:

如果你想要一个数组,只需返回一些可枚举的:

return Json ( Enumerable.Range(0, 10).Select(i => new { Name = "N" + i, Price = i });

【讨论】:

  • 但是如果数组是动态的呢?
  • 好的,没关系。我现在明白了,谢谢你的好回答。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-06-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多