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

Popular posts from this blog

Spring Elasticsearch Operations

Network Error and Timeout on Authorize.net JS

Object oriented programming concepts (OOPs)