Как повысить производительность процесса, который загружает список продуктов из базы данных с помощью C #? - PullRequest
0 голосов
/ 09 декабря 2018

У меня есть веб-API ASP.NET, и в нем есть ProductsController.А также есть метод GetProducts () для загрузки всех продуктов из базы данных.Обычно я загружаю все записи сразу, чтобы вернуться.Но я не думаю, что это хорошая идея.Потому что, если будет более тысячи записей, их загрузка займет больше времени.Мой вопрос: как я могу увеличить производительность и уменьшить время для этой операции?PS: у меня есть 1 таблица и 9 столбцов.

Большое спасибо за ваше внимание.

Мой вопрос не об ошибке.

1 Ответ

0 голосов
/ 09 декабря 2018

Существует несколько методов, о которых упоминалось в комментариях, для реализации нумерации страниц.

Вы также упомянули, что у вас есть 9 столбцов, поэтому для выбора только столбцов вам нужны запросы, а не все.

Предполагая, что вы используете ORM, такой как Entity Framework, самая большая ошибка, которую я вижу, это то, что люди вызывают ToList () для DbSet ... что является самой простой ловушкой для чего-либо другого, как вызовToList () до подкачки будет означать, что операции, которые вы определили над объектами после этого, будут выполняться в памяти, а не как оператор SQL.Такие вещи, как .Skip (), Take () или ваши предложения Where должны появляться перед выполнением запроса с помощью вызова ToList ().

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...