· 1 min read

LINQ method to see if two lists contain a match

This post gives you the code to check if two lists contain a match. It is written in C# and uses LINQ.

This comes up quite often in my work where I want to check if a value from one list is in another list.

Perhaps you need to check if a user has a permission do do something.

You have a list of the user's roles and you have a list of roles that are allowed to do the thing. With the code below, you can pass in the two lists and get a true or false answer back for if there was a match.

public static bool ListsContainAMatchingValue(IEnumerable<string> listA, IEnumerable<string> listB)
{
    return listA.Any(x => listB.Contains(x));
}

Feel free to use this code, and share with others. If you have an alternative suggestion, please leave it in the comments.

Comments and reactions