如何使用 LINQ 将表列查询到数组中

Posted

技术标签:

【中文标题】如何使用 LINQ 将表列查询到数组中【英文标题】:How to query a table column into an array with LINQ 【发布时间】:2013-12-01 14:51:13 【问题描述】:

我只是想通过使用 ListBoxFor 在 MVC 中使用多选选项。我创建了我的视图模型并将该视图模型传递给视图。但我发现我需要创建一个数组列表以传递给视图,当结果回传到控制器时,我将能够找出已选择的内容并将其保存在表中。所以我有一个名为 ArtistTypes 的表,我想从该表中获取 ArtistTypeID 的数组列表并将其传递给查看。我不知道如何查询到数组?

int[] selectedIds = _db.ArtistTypes.ToList().Select(x=> new int[]???);

【问题讨论】:

【参考方案1】:

使用这个

int[] selectedIds = _db.ArtistTypes.Select(x=> x.artistTypeID).ToArray();

【讨论】:

【参考方案2】:

你可以通过

int[] selectedIds = A.Select(x => x.ArtistId).ToArray();

但我会推荐你使用这个

IEnumerable<int> selectedIds = A.Select(x => x.ArtistId);

因为 Array 也实现了 IEnumerable

【讨论】:

我没有得到“因为”部分。它并不能真正满足您为什么要使用IEnumerable

以上是关于如何使用 LINQ 将表列查询到数组中的主要内容,如果未能解决你的问题,请参考以下文章

使用 LINQ to SQL 时如何指定/过滤应填充哪些表列?

如何将表列从十进制更改为 varchar [重复]

如何将表的一列值保存到数组中?

如何查询从表列中选择所有输入

如何使用java在mySql的表列中存储数组值

将数组存储为逗号分隔,如何使用 LINQ 进行查询?