вы не можете отправить данные клиенту по инициативе сервера.
Вам придется опросить (jQuery / ajax), если новые данные доступны, а затем обновить со стороны клиента.
это включает в основном:
- на сервере
- веб-сервис, метод страницы веб-метода, пользовательский обработчик и т. Д., Которые могут определить наличие новых данных
- на клиенте
- таймер, который запрашивает сервер, обновляются ли данные, и, в этом случае, обновляет страницу или восстанавливает DOM при использовании некоторого JS-шаблона
[Изменить] немного фона:
На самом деле, System.Web.HttpContext.Current.Response
является нулевым из-за асинхронной модели протокола Http. Браузер отправляет запрос "http://srv/resource",, сервер перехватывает его на порту 80 (по умолчанию), анализирует запрос, создает ответ (в основном это связка HTML-контента) и отправляет ответ браузеру. Затем соединение закрывается. Это Выбор обеспечивает большую масштабируемость, поскольку не требует поддержания тысяч соединений в живых, при этом данные практически не передаются.
Результатом этого является то, что веб-сервер должен знать клиента, кроме того, что отправляется в запросе. Сервер получает текст и отправляет текст взамен.
Microsoft создала среду ASP.Net для воспроизведения ощущений RAD в настольных приложениях. Вы думаете с элементами управления и событиями, а не с созданием потока HTML, как ASP или PHP Они преуспели в том смысле, что создание веб-приложений весьма похоже на разработку настольных систем.
вполне на самом деле вызывает у вас некоторую путаницу. Даже если инфраструктура asp.net инкапсулирует большую часть сантехники (viewstate является ключом) для имитации этого поведения, asp.net, по крайней мере, все равно будет анализатором текста запроса, который создает HTML-текст для отправки клиенту один выстрел.
Так что вы должны обманывать. Как я уже говорил, вы можете автоматизировать браузер (используя javascript), чтобы превратить эту асинхронную работу в «динамическое» приложение.