Скорость получения информации из базы данных

#angular #database #asp.net-web-api #treeview #webapi

Вопрос:

Я перечисляю данные, которые я извлек из базы данных в treeview. Но у меня есть один вопрос. У меня есть таблица городов, округов и районов. Я записываю районы выбранной провинции и районы выбранного района в таблицу. Нет никаких проблем с печатью по одному, но когда мы выбираем много данных (все), этот процесс занимает около 17 минут для запуска в сети. Когда я убираю руку с ключа All, новые данные постоянно поступают из-за запроса к wep api.

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

Остановка сети, когда мы перестаем нажимать кнопку «Все». Заставляя пользователя ждать, используя сайт, добавляя 20-минутную задержку. (это не имеет никакого смысла.)

Комментарии:

1. 17 минут — это слишком много. Как пользователь взаимодействует с вашими элементами управления? Можете ли вы сначала выбрать все округа, а затем, когда пользователь выберет округ, выбрать города для этого конкретного выбора, и после того, как вы тоже узнаете город, выбрать районы выбранного города?

2. Вместо этого я легко нашел решение, написав функцию, которая отменит все ожидающие запросы при нажатии кнопки. Спасибо вам за вашу помощь.

Ответ №1:

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

Ответ №2:

private ngUnsubscribeNeighborhood = new Subject(); используя структуру. Я сделал назначение трубы в то место, где мы подписываемся. Я установил Pipe на takeUntil и назначил его ngUnsubscribeNeighborhood. Затем я нажал на кнопку. ngUnsubscribeMahalle.next(); Я решил эту проблему, выполнив