Индикатор выполнения MVC при загрузке данных БД в HomeController () до нажатия Index ActionResult на C # - PullRequest
0 голосов
/ 17 июня 2019

У меня есть HomeController, который загружает данные в модель из базы данных SQL.

До:

public ActionResult Index()
    {
        return View(_homePageViewModel);
    }

, данные загружены в

_homePageViewModel

и когда он будет готов, страница бритвы загружается.

Мне удалось показать «Загрузка GIF» во время загрузки содержимого Razor Page, но до того, как ничего не отобразилось, есть время, когда главный конструктор HomeController загружает данные из БД.

Мне нужно показать индикатор выполнения, который будет идти от 0% до 100% при загрузке данных из БД.

Я не знаю, как этого достичь, поскольку страница индекса еще не загружена.

Нужно ли загружать страницу загрузчика перед обработкой индекса? Просто чтобы покрыть время, когда HomeController заканчивает свою работу?

1 Ответ

1 голос
/ 17 июня 2019

Вам нужно создать «страницу загрузчика», как вы ее называете, которая использует AJAX для обновления своего содержимого.Однако нет способа измерить и показать% на странице: не существует чего-то вроде «процента завершения запроса БД», который вы можете использовать.

Страница загрузчика может:

  • покажите какой-нибудь счетчик GIF
  • используйте вызов AJAX для
    • получения соответствующих данных (используя веб-API) и визуализации HTML с помощью javascript
    • для получения частичногостраницы (используя MVC) и включите ее в страницу загрузчика DOM
...