[英]Converting a LINQ result to 2D string array
我有一個LINQ查詢,該查詢選擇一個teamID和團隊名稱列表來填充下拉列表。 查詢如下所示:
var teams = db.Teams.Where(t => t.isActive)
.Select(t => new {t.TeamID, t.TeamName});
但是,我希望結果集采用2D字符串數組的形式,因為這是填充DDL的函數所需要的。 我知道我可以使用for循環並構建數組,但是我更喜歡它,如果可以的話,一步一步完成。
有類似的東西嗎?
string[][] teams = db.Teams.Where(t => t.isActive)
.Select(t => new {t.TeamID, t.TeamName})
.To2DArray();
請注意, string[][]
不是多維數組,而是數組的數組。 多維數組看起來像string[,]
,並且具有不同的語義(即數組的數組可能具有不同長度的子數組,但是多維數組中的所有行/列都具有相同的長度)。
由於您只是在處理數組數組,因此最簡單的解決方案可能是在由ToArray創建的一系列項目上使用ToArray。
以下代碼假定db.Teams也是一個數組數組:
var teams =
db.Teams
.Select(teamArray =>
teamArray
.Where(t => t.isActive)
.Select(t => new {t.TeamID, t.TeamName})
.ToArray())
.ToArray();
的種類:
string[][] teams = db.Teams.Where(t => t.isActive).Select(t => new[] {t.TeamID, t.TeamName}).ToArray();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.