Как мне обновить Gridview в режиме реального времени

#asp.net #signalr

#asp.net #signalr

Вопрос:

Может кто-нибудь предложить мне какой-нибудь код разработки .net для обновлений в режиме реального времени в gridview?

У меня есть один gridview в моей веб-форме. Если я загружу файл в fileupload на sqlserver, мой gridview с другого компьютера или другого браузера, тогда мой текущий браузер автоматически обновится с изменениями. Мне не нужно вручную нажимать кнопку обновления или F5, чтобы увидеть изменения в моем gridview.

Спасибо.

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

1. используйте частичный возврат страницы, чтобы запустить эту конкретную часть вашей страницы.

2. или используйте SignalR для обновления в режиме реального времени

3. или вы можете использовать событие отправки сервера, en.wikipedia.org/wiki/Server-sent_events , но это не поддерживается IE

Ответ №1:

вот несколько вариантов, которые вы можете использовать

  1. используйте таймер клиента и периодически опрашивайте изменения

  2. используйте WebSockets

  3. используйте события, отправленные сервером (Content-Type: text / event-stream), но это не поддерживается IE

  4. SignalR

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

1. номер четыре .. я посмотрел этот учебник sylvester-lee.blogspot.com/2014/03/aspnet-signalr.html но это тоже не может сработать..

2. «это не может работать» означает, что, покажите свой код, где вы сложили

3. я создаю класс запуска, как на этом веб-сайте, вот моя система импорта NotificationHub.vb. Веб-импорт Microsoft. AspNet. SignalR пространство имен SignalRChat Публичный класс NotificationHub Наследует общедоступную суб-отправку хаба (имя в виде строки, сообщение в виде строки) ‘ Вызовите метод broadcastMessage для обновления клиентов. Clients.All.broadcastMessage(имя, сообщение) End End End Класс End пространство имен

4. в моем home.aspx var NotificationHub = $.connection . NotificationHub; NotificationHub.client.refresh = function (stock) { $(«#Gridview1»).each(функция (i) { if ($(this)[0].id == stock. ID) { $(this).attr(‘style’, ‘background-color: желтый;’); $(this).animate({backgroundColor: ‘белый’ }, 3000); } }); }; в home.aspx.vb Dim context = GlobalHost. ConnectionManager. GetHubContext(из NotificationHub)() Dim aTimer = новая система. Таймеры. Таймер (1000) по времени. Интервал = 3000 aTimer. Включен = истинный контекст. Clients.All.refresh()

5. он не обновляет мой gridview в другом браузере.. я начинающий пользователь signalR..so , я очень сбит с толку.. я надеюсь, что вы сможете мне помочь 🙂