System.Collection.Generic.IEnummerable<string> == stri

本文关键字:string stri gt lt Collection Generic IEnummerable System | 更新日期: 2023-09-27 18:02:39

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

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>

如何检查是否相等?

System.Collection.Generic.IEnummerable<string> == stri

您需要先使用SelectMany来平化Account,然后使用Any来检查:

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

或者使用双Any检查:

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