Aijaz Ali Abro Ответов: 1

Очень плохая и медленная загрузка больших записей из базы данных в ASP.NET MVC 5 с E. F6 с использованием запроса LINQ?


Привет всем, я работаю над веб-приложением, использующим vs2015, MVC5 с E.F6 и запросом LINQ. Когда я добавил 62,91,456 записей в базу данных sql server. Когда я запрашиваю через LINQ, мое приложение работает очень плохо и медленно, занимает слишком много времени для загрузки записей. Я также добавил разбиение на страницы с помощью функций LINQ skip () и take (). Я не понимаю, что означает запрос SQL, он работает на стороне базы данных или на стороне сервера? Пожалуйста, помогите мне. Когда я ищу любую конкретную запись с помощью пользовательского интерфейса автозагрузки jquery, возникает ошибка сервера 505, и код не работает, вся моя система зависает и работает медленно. Есть ли какие-нибудь решения, чтобы ускорить работу моего приложения?

Что я уже пробовал:

я перепробовал много сайтов, но до сих пор не получил никакого решения

1 Ответов

Рейтинг:
12

Dave Kreskowiak

В Entity Framework запрос LINQ преобразуется в инструкцию SQL и выполняется на SQL-сервере. Если ваш запрос работает плохо, это, вероятно, потому, что ваша база данных настроена неправильно, например, отсутствуют индексы, или ваш запрос делает что-то, что не использует их преимущества, или что-то, что требует оценки или вычисления для каждой записи в какой-то таблице, включенной в запрос.


Aijaz Ali Abro

Вы правы, я не устанавливал индексов. У меня есть таблица с именем address, эта таблица имеет три столбца: Id (PK) auto, full_address и registeration_date. Теперь скажите мне, в каком столбце я должен установить индекс? могу ли я установить индексы для обоих столбцов (дата и идентификатор)? Пожалуйста, также скажите мне, как установить индексы в Столбцах базы данных? я использую management studio2008.

Dave Kreskowiak

Нет, я не могу, потому что я почти ничего не знаю о структуре вашей базы данных и о том, как вы ее запрашиваете.

Я могу сказать вам, что поле PK автоматически индексируется. Вы можете настроить индексы для этих полей, но это будет иметь определенное влияние. Вставки и обновления выполняются медленнее, поскольку индексы должны обновляться для отражения новых данных.

Aijaz Ali Abro

спасибо