C# - All filters must occur in a list to search in with StartsWith
I want all filter values to occur in the list to be searched and must start with the filter value.
Filters:
| FilterValue 1 | FilterValue 2 | FilterValue 3 |
|---------------|----------------|---------------|
| San Franc | christoph | us |
List to search in:
| County | Street | Country | StreetNr |
|---------------|-----------------------|---------|----------|
| San Francisco | Christopher street | USA | 12 |
| San Francisco | Christopher Street | MEX | 44 |
| San Francisco | Street of Christopher | USA | 47 |
| San Francisco | Major street | USA | 32 |
| San Francisco | Chris road | USA | 99 |
Expected result:
| County | Street | Country | StreetNr |
|---------------|-----------------------|---------|----------|
| San Francisco | Christopher street | USA | 12 |
What i've tried:
addresses = addresses.Where(p => new List<string>()
{
p.County,
p.Street,
p.Country,
p.StreetNr,
}.Any(addressProperty => filters.Any(filter => addressProperty.StartsWith(filter))));
This will output the data below with linq to objects as just one filter has to be met.
| County | Street | Country | StreetNr |
|---------------|-----------------------|---------|----------|
| San Francisco | Christopher street | USA | 12 |
| San Francisco | Christopher Street | MEX | 44 |
| San Francisco | Street of Christopher | USA | 47 |
| San Francisco | Major street | USA | 32 |
| San Francisco | Chris road | USA | 99 |
from Recent Questions - Stack Overflow https://ift.tt/3kZjPsA
https://ift.tt/eA8V8J
Comments
Post a Comment