我有以下Lambda表达式,它返回一个结果属性数组:
这个代码可以正常工作,但我需要结果是一个键值对,其中ID是键,Column1和Column2是值。我已经找到了如何创建字典的示例,但没有只隔离结果中特定列的方法。
在视图中,
ViewBag.Items = db.Items.Select(m => new { m.Id, m.Column1, m.Column2 }).ToArray();
这个代码可以正常工作,但我需要结果是一个键值对,其中ID是键,Column1和Column2是值。我已经找到了如何创建字典的示例,但没有只隔离结果中特定列的方法。
在视图中,
ViewBag.Items
被本地化为jQuery。var _items = @Html.Raw(Json.Encode(ViewBag.Items));
我该如何修改上面的Lambda表达式,以便生成一个键值对数组?
.Select()
。 - Ericdb.Items
是数据库表,那么Select
只会检索所需字段,而直接调用ToDictionary
将会检索整个记录。因此,如果这不是针对LINQ to Objects(看起来并不是),最好不要跳过Select
步骤。 - Ivan Stoev