Ожидайте страница в ASP.NET MVC

Вы можете выбрать, какие узлы должны быть впереди, а какие сзади, установив их он z Положение .

first_node.zPosition  = 1
second_node.zPosition = 2  // displayed over first node

5
задан tereško 13 July 2012 в 07:07
поделиться

5 ответов

Можно все еще использовать Ответ. Запишите () и Ответ. Сброс () для любого состояния Вы хотите отправить вниз провод. Или если у Вас есть своя штука прогресса в пользовательском элементе управления, Вы могли бы сделать что-то как:

this.PartialView("Progress").ExecuteResult(this.ControllerContext);
this.Response.Flush();

от Вашего контроллера при выполнении долгой операции в методе действия контроллера.

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

5
ответ дан 13 December 2019 в 19:38
поделиться

Я предложил бы использовать Ajax для отображения прогресса. См. ссылки для идей:

2
ответ дан 13 December 2019 в 19:38
поделиться

Существует два основных пути:

  1. Опросите страницу сервера, которая возвращает состояние, затем после того как операция сделана, перенаправления к странице результатов. MVC не имеет отношения к этому пути, необходимо было бы использовать серверную переменную для хранения объектов/состояния - это - способ, которым это более относится к стандартному приложению Asp.NET, поскольку Вы (по-видимому), используете переменные сеанса и т.д. так или иначе.

  2. Вызов Ajax от клиента к веб-сервису на сервере. Asp.NET MVC будет сыплющим платформы jQuery, так использование это для клиентской обработки вызовов и обработки событий для ответа. Это было бы больше в духе MVC, который/должен состояние сеанса использования и т.д.

2
ответ дан 13 December 2019 в 19:38
поделиться

Можно сделать его в стороне клиента. На каждом шаге Вы устанавливаете некоторую переменную сеанса с текущим шагом. Затем Вы заставляете другое действие в своем контроллере сказать названный: "GetProgress" и присваивают представление и URI для него.

В действии Вы проверите эту сессию и возвратите текущий прогресс Вашей задачи. В стороне клиента сделайте таймер (т.е. setTimeOut), и Вы вызываете URI более позднего действия контроллера каждое определенное количество времени - 1 секунда или около этого. Это - это.

1
ответ дан 13 December 2019 в 19:38
поделиться

Меня лично я рассмотрел бы два optoins:

  • перенаправьте, чтобы ожидать страница (страницы), затем запустить действия
  • Сделайте это стиль ajax
1
ответ дан 13 December 2019 в 19:38
поделиться
Другие вопросы по тегам:

Похожие вопросы: