Это зависит от ситуации, хотя я обычно предпочитаю при поиске в памяти, когда это возможно.
Однако зависит от контекста, например, если записи могут обновляться между одним поиском и другим, и вам нужно наиболее обновленноезапись во время поиска, очевидно, вам нужен поиск в базе данных.
Если размер набора записей (таблицы данных), который вам нужно сохранить в памяти, огромен, возможно, лучше выполнить другой поиск непосредственно в базе данных.
Однако имейте в виду, что если вы можете и если производительность важна для загрузки данных в таблицу данных и поиска, фильтрация с помощью LINQ, например, может повысить производительность самого поиска.
Еще одна вещь, которую следует учитыватьОбратите внимание на производительность сервера базы данных и производительность сервера приложений: если сервер баз данных достаточно быстр по поисковому запросу, возможно, вам не нужно кэшировать память в приложении, и поэтому вы можете избежать одного шага.Имейте в виду, что при кэшировании в памяти поиск вычислительных запросов перемещается из базы данных на сервер приложений ...
Абсолютный ответ на ваш вопрос невозможен, он относителен в вашем контексте ...