System.Collection.Generic.IEnumerable <string> == string </string>

时间:2013-03-06 14:49:02

标签: c#

我从数据库中获取用户,并且用户有一个帐户列表。 我需要检查一个帐户的名称是否等于一个字符串。 所以我选择了所有帐户,然后选择名称:

var accounts = user.Select(u=> u.Accounts.Select(a => a.Name)).ToList();

然后我在另一个名字后面检查一个名字:

for (int i = 0; i <= accounts.Count(); i++)
{
     if (accounts[i] == mandant)
         return true;
}

mandant = string的类型为 和accounts[i] = System.Collections.Generic.IEnummerable<string>

的类型

如何检查是否相同?

1 个答案:

答案 0 :(得分:5)

您需要先使用Account展平SelectMany,然后使用Any进行检查:

if (users.SelectMany(u => u.Accounts).Any(a => a.Name == mandant))
{
}

或使用双Any来检查:

if (users.Any(u => u.Accounts.Any(a => a.Name == mandant)))
{
}