【发布时间】:2013-11-22 14:25:56
【问题描述】:
json 使用 POST 方法从浏览器传递到服务器中的 ASP.NET MVC4 应用程序控制器。 它包含属性,其中 3 个是 0.. 20 个元素的数组(在所有这些元素下面的代码中 只有 1 个元素)。 如何在 C# 中解析这个 json? 我尝试了带有签名的控制器
public JsonResult RegisterSales(Sale mysale)
但未分配 mysale 属性。
通过json:
{ "id":"sale1",
"sale_date":"2013-11-10 19:20:44"
"taxes":[{"id":"km20pr","name":"20%","rate":0.2}],
"products":[{"id":"prod1",
"sale_id":"sale1",
"register_id":"register1",
"quantity":"1.00000"}],
"payments":[{"id":"payment1",
"sale_id":"sale1",
"register_id":"register1",
"amount": 0
}]
}
它应该被解析为类似 C# 的结构
public class Sale
{
public string id;
public DateTime sale_date;
public Tax[] taxes;
public Product[] products;
public Payment[] payments;
}
public class Tax
{
public string id, name;
public decimal rate;
}
public class Product
{
public string id, sale_id, register_id;
public decimal quantity;
}
public class Payment
{
public string id, sale_id, register_id;
public decimal amount;
}
【问题讨论】:
-
如何将 JSON 发布到 MVC? (代码才是真正重要的)。例如AJAX => 你发送的数据是什么?
-
http POST 请求正文包含有问题发布的文本 - json。我将
{get; set;}添加到每个相关类中的每个属性中,看起来属性中填充了数据。这是最好的解决方案吗?
标签: c# asp.net asp.net-mvc json asp.net-mvc-4