【发布时间】:2017-09-25 16:00:28
【问题描述】:
在我的 MVC 控制器中,我有以下 linq 查询(工作正常):
var result = from li in lineItems
join r in rates on li.something = r.something
select new
{
li.something
li.somethingElse
li.another
r.something
r.somethingElse
r.rate1
r.rate2
r.rate3
r.rate4
};
return JSON(result.ToList(), JsonRequestBehavior.AllowGet);
这会生成一个平面对象就好了。然而,我真正需要的是让费率成为自己的对象,更深一层,如下所示:
{
li.something
li.somethingElse
li.another
r.something
r.somethingElse
rates = {
{id = "1", value = r.rate1}
{id = "2", value = r.rate2}
{id = "3", value = r.rate3}
{id = "4", value = r.rate4}
}
}
我很难正确使用 C# 语法来实现这一点。对 id 进行硬编码很好。我将永远只有速率 1 2 3 和 4。
【问题讨论】:
-
您可以将“rates”属性定义为匿名对象数组。