Answer: This can be done using the
"Contains" extension method. Example follows.
Suppose we have a person class as under
public class Person
{
public string PersonName { get; set; }
public string JobTitle { get; set; }
public override string ToString()
{
return "Person Name: " + PersonName + " JobTitle:" + JobTitle;
}
}
Then populate the Person collection as under
private static List<Person> PreparePersonCollection()
{
List<Person> lstPersonCollection = new List<Person>();
lstPersonCollection.Add(new Person { PersonName = "Amitav Sen", JobTitle = "Design Engineer" });
lstPersonCollection.Add(new Person { PersonName = "Bhavini Dey", JobTitle = "Software Engineer" });
lstPersonCollection.Add(new Person { PersonName = "Debasis Basu", JobTitle = "Software Engineer" });
lstPersonCollection.Add(new Person { PersonName = "Kartik Moin", JobTitle = "Lead Engineer" });
lstPersonCollection.Add(new Person { PersonName = "Shahjahan Khan", JobTitle = "Technical Lead" });
return lstPersonCollection;
}
Suppose we want to get the list of Person who has job Title as
"Design Engineer", "Software Engineer".
The complete query will be as under
List<Person> source = PreparePersonCollection();
string[] strJobTitleToInclude = new string[] { "Design Engineer", "Software Engineer" };
source
.Where(i=>strJobTitleToInclude.Contains(i.JobTitle))
.ToList()
.ForEach(i => Console.WriteLine(i.ToString()));
Output
Person Name: Amitav Sen JobTitle:Design Engineer
Person Name: Bhavini Dey JobTitle:Software Engineer
Person Name: Debasis Basu JobTitle:Software Engineer
Asked In: Many Interviews |
Alert Moderator