Próbuję wygenerować plik PDF w locie w czasie wykonywania z bazy danych, Aplikacja działa dobrze, ale zastanawiam się, czy mogę wyświetlić pasek postępu do momentu wygenerowania pliku pdf with out using ajax.
Oto moja akcja generowania pliku PDF
public ActionResult GeneratePDF(){
//This Generates PDF
return ...
}
Teraz chcę wyświetlać informacje o pasku postępu, dopóki nie zostanie wygenerowany plik PDF, coś takiego
public ActionResult GeneratePDF(){
//show progress
...............
//This Generates PDF
return View();
}
public ActionResult ShowProgress(){
//Show progress
......
//return to GeneratePDF to show pdf when it is ready
return RedirectToAction("GeneratePDF");
}
Doceniam wszelkie sugestie, jak sobie z tym poradzić.
2 odpowiedzi
Nie sądzę, że możesz to zrobić. Nawet jeśli mógłbyś kontynuować w ten sposób po stronie serwera, gdy przeglądarka otrzyma odpowiedź na swoje początkowe żądanie, nie będzie wiedziała, co zrobić z innymi, które nadejdą później.
Protokół HTTP jest zasadniczo oparty na koncepcji żądanie-odpowiedź, żądanie-odpowiedź - i to przeglądarka znajduje się w miejscu kierowcy, a nie serwer. AJAX to droga do tego rodzaju bogactwa interfejsu użytkownika po stronie klienta.
Możesz użyć JavaScript lub jQuery, aby wyświetlić animowany gif ładujący.
To znaczy:
$('.ładowanie').show();
Podobne pytania
Nowe pytania
asp.net
ASP.NET to platforma programistyczna firmy Microsoft do tworzenia aplikacji internetowych, która umożliwia programistom tworzenie dynamicznych witryn internetowych, aplikacji internetowych i usług internetowych. Przydatne jest używanie tego tagu w połączeniu ze znacznikiem typu projektu, np. [asp.net-mvc], [asp.net-webforms] lub [asp.net-web-api]. NIE używaj tego tagu w przypadku pytań dotyczących ASP.NET Core - zamiast tego użyj [asp.net-core].