使用Linq搜索string [,]

时间:2019-01-24 05:10:39

标签: c# .net linq

我有两个三维字符串数组。我需要使用第一个元素编写匹配但返回第二个的LINQ Qudery。

例如:

public string[,] values= { {"USA", "New York" }, { "Australia", "Sydney" } };

如果在LINQ中我匹配美国查询,则应返回“纽约”。

请帮助

1 个答案:

答案 0 :(得分:2)

您可以使用此:

string state = Enumerable
    .Range(0, values.GetLength(0))
    .Where(i => values[i, 0] == countryName) // here country name is "USA"
    .Select(i => values[i, 1])
    .FirstOrDefault(); // returns New York.

此外,根据注释,您可以使用字典,然后可以简单地使用以下内容:

state = values.ContainsKey("USA") ? values["USA"] : string.Empty;