Мне нужно вызывать идентичные запросы LINQ несколько раз, которые имеют только разные элементы в предложении where.Вместо того, чтобы повторять запрос LINQ снова и снова, я хотел бы вместо этого передать элементы в один запрос, но я заикаюсь о том, как это сделать.
Прямо сейчас мой базовый запрос LINQ выглядитнапример:
return from a in _repository.GetApps()
join set in _repository.GetSettings() on a.id equals set.application_id
join type in _repository.GetSettingsTypes() on set.setting_type_id equals type.id
join ent in _repository.GetEntities() on a.entity_id equals ent.id
where ent.ROW_ID == app && set.application_id == id && (set.setting_type_id==81 || set.setting_type_id==82 || set.setting_type_id==83)
orderby set.application_id, type.ordinal
select new Settings { app_name = a.name, data_type = type.data_type, setting_name = type.name, setting_description = type.description, setting_value = set.setting_value, entity_name = ent.name, entity_num = ent.ROW_ID };
В предложении "where" просто перечислены типы настроек по идентификаторам.Другие вызовы просто заменят это предложение «где» на большее или меньшее количество установочных идентификаторов, которые затем возвращаются в представление.Как я могу динамически заменить это предложение "где" или идентификаторы настроек?Могу ли я просто присвоить строку или массив списку настроек после второго «&&» (это, похоже, не работает)?Или Lambdas поможет здесь (я также не мог заставить это работать)?Спасибо!