У меня есть список объявлений, которые я хочу фильтровать. Объявления имеют только один рейтинг контента: G, PG, PG13 или R. В настоящий момент у меня есть метод, который может фильтровать через список, если я укажу ровно один рейтинг контента. Например, если я перехожу в «G» в свой метод, я возвращаю элементы в списке только с рейтингом содержания «G».Метод фильтрации списка с использованием логических операторов && ||
Если бы я должен был предоставить два рейтинга контента, например «G» и «PG», метод ничего не возвращает, потому что он ищет объявления с рейтингом контента «G» и «PG», и такие объявления несуществуют потому что с каждым объявлением связано только одно содержание.
Я хочу переписать мой метод, чтобы, если я передаю два рейтинга контента, скажем «G» и «PG», он вернет список объявлений с «G» или «PG».
Это часть моего метода, который необходимо решить:
adList = adList.Where(ad => ad.IsG == filter.ContentRatings.IsG
&& ad.IsPG == filter.ContentRatings.IsPG
&& ad.IsPG13 == filter.ContentRatings.IsPG13
&& ad.IsR == filter.ContentRatings.IsR);
редактировать: фильтр класса, ad.IsPG и filter.ContentRatings.IsG (IsPG13, ISR, ISG) являются логические значения , если вам интересно, это не сработает.
adList = adList.Where(ad => ad.IsG == filter.ContentRatings.IsG
|| ad.IsPG == filter.ContentRatings.IsPG
|| ad.IsPG13 == filter.ContentRatings.IsPG13
|| ad.IsR == filter.ContentRatings.IsR);
Можете ли вы поделиться больше вашего текущего метода? Являются ли параметры только входящими в строку? Как параметры используются в той части, которую вы предоставляете? – arbitrarystringofletters
Почему бы вам не попробовать с '||', как указано в названии. и что такое «фильтр» в этом сценарии? где он определен? –