Compare two List<string> using LINQ

In this post, we will see how to compare two List<string> and list the elements found in one List<string> but not in the other. We will be using the Enumerable.Except method

C#

static void Main(string[] args)
{
List<string> lstOne =
new List<string>() { "Jim", "Jack", "Kate", "Nope" };

List<string> lstTwo =
new List<string>() { "Jack", "Nope", "Jim" };

IEnumerable<string> lstNew = null;

// Compare two List<string> and display items of lstOne not in lstTwo
lstNew = lstOne.Except(lstTwo, StringComparer.OrdinalIgnoreCase);

PrintList(lstNew);
Console.ReadLine();
}

static void PrintList(IEnumerable<string> str)
{
foreach (var s in str)

Console.WriteLine(s);
Console.WriteLine("-------------");
}

OUTPUT

image

Read some more tips in my article over here Some Common Operations using List<string>






About The Author

Suprotim Agarwal
Suprotim Agarwal, Developer Technologies MVP (Microsoft Most Valuable Professional) is the founder and contributor for DevCurry, DotNetCurry and SQLServerCurry. He is the Chief Editor of a Developer Magazine called DNC Magazine. He has also authored two Books - 51 Recipes using jQuery with ASP.NET Controls. and The Absolutely Awesome jQuery CookBook.

Follow him on twitter @suprotimagarwal.

No comments: