I have list of objects:
public class SDesc
{
public string sensorId { get; set; }
public string address { get; set; }
}
List<SDesc> desc = new List<SDesc>
{
new SDesc {sensorId = "1234", address = "Adams22"},
new SDesc {sensorId = "5555", address = "Hourton34"},
new SDesc {sensorId = "4444", address = "SaintsRoad55"},
new SDesc {sensorId = "1258", address = "BerryAve58"},
new SDesc {sensorId = "52486", address = "SaintsRoad2"},
new SDesc {sensorId = "12361", address = "TomassonRoad"}
}
And also I have IEnumarable of strings:
IEnumarable<string> sId = {"4444","52486","12361"};
from desc list I need to remove records where sensorsId property exists in sId list.
For example for case above the result I want to get is:
List<SDesc> desc = new List<SDesc>
{
new SDesc {sensorId = "1234", address = "Adams22"},
new SDesc {sensorId = "5555", address = "Hourton34"},
new SDesc {sensorId = "1258", address = "BerryAve58"},
}
Here what I tried:
desc.RemoveAll(obj => obj.sensorId == sId);
But it's not works properly because sID is IEnumarable type.
So my question is how to remove items from desc list where sensorsId property exists in sId list?