Как обновить view off model в ASP.NET MVC?

#c# #html #asp.net-mvc #.net-framework-version

#c# #HTML #asp.net-mvc #.net-framework-version

Вопрос:

В моей модели есть метод, который находит камеры в сети. Камеры обнаруживаются одна за другой и сохраняются в списке с именем List Cameras. Когда добавляется новая камера или камера удаляется, она мгновенно обновляется в переменной list.

В представлении у меня есть

          @foreach(var Item in Model.Cameras) {
            <tr>
                <td>@Item.Name</td>
                <td>@Item.IP</td>
                <td>@Item.HostName</td>
            </tr>
          }
  

чтобы отобразить список камер. Как мне указать view для обновления (без перезагрузки страницы) при обнаружении или удалении камеры? Это запускается из модели или представления?

Ответ №1:

Это выходит за рамки ASP.NET MVC. После отправки HTTP-ответа вы не можете его изменить. Однако существует несколько способов достижения функциональности в реальном времени, таких как события, отправляемые сервером, длительный опрос или WebSocket.

Однако, поскольку вы используете .NET, лучшим выбором, вероятно, будет SignalR. SignalR — это библиотека реального времени, которая позволяет отправлять «уведомления» с вашего сервера любым клиентам JS (или .NET). Поскольку вы не указали версию ASP.NET вы используете, я не могу дать вам ни одной прямой ссылки, но взгляните на эти: