顧客の注文のリストを返すクエリを実行します。
SELECT cust_no, cust_name, order_no, order_name FROM CustomerOrders
私のController Action
方法では、次のことを行います ( _context
is my DataContext
):
var results = _context.CustomerOrders.ToList();
return Json(results, JsonRequestBehavior.AllowGet);
デバッガーでこれを調べると、オブジェクトのリストが表示されますが、Json に慣れていないため、Json 文字列としてこれがどのように見えるかわかりません。私が望むフォーマットは次のとおりです。
{
"Customer": {
"cust_no": "123",
"cust_name": "john",
"Orders": [
{
"order_no": "1",
"order_name": "order1"
},
{
"order_no": "2",
"order_name": "order2"
}
]
},
"Customer": {
"cust_no": "456",
"cust_name": "jane",
"Orders": [
{
"order_no": "3",
"order_name": "order3"
},
{
"order_no": "4",
"order_name": "order4"
}
]
}
}
私は現在これに入ることができます:
{ Customer = "123", cust_name = "John", Orders = "1", oder_no = "order1" }
と:
_context.CustomerOrders.Select(x => new
{
Customer= x.cust_no, x.cust_name,
Orders = x.order_no, x.order_name});
public ActionResult GetCustomerOrders()
{
JsonResult result = null;
try
{
var results = new {Customers = _context.CustomerOrders.ToList()};
return Json(results,JsonRequestBehavior.AllowGet);
}
catch (Exception ex)
{
//Log
}
return result;
}