Динамическое поле для комментариев

#.net #asp.net-mvc #frontend #signalr #.net-framework-version

#.net #asp.net-mvc #интерфейс #signalr #.net-framework-version

Вопрос:

Я хочу создать динамическое поле для комментариев в моем проекте, похожее на Facebook, где сделанные комментарии сохраняются в базе данных и мгновенно отображаются на странице без перезагрузки.

Мой проект основан на .net Framework, и я не использую Angular или React. Какой метод для меня наилучший для достижения этого?

Я подумываю об использовании SignalR. Я не знаю, правильное ли это решение. Пожалуйста, помогите мне.

Ответ №1:

SignalR — отличное решение, но не единственное.

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

https://learn.microsoft.com/en-us/aspnet/signalr/overview/getting-started/tutorial-getting-started-with-signalr-and-mvc

На стороне базы данных вам нужно будет хранить комментарии относительно пользователя и публикации. Затем вы должны рассмотреть другую сторону для получения комментариев для отправки клиенту, что может быть сделано путем опроса на стороне сервера и отправки клиенту, запроса от клиента по времени для получения любых новых комментариев и т.д.

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

1. Большое спасибо! Я выполнил вызов Ajax для сохранения сведений о комментариях в базе данных. Я ищу способы получения этих сведений без обновления и в режиме реального времени. Если есть какие-либо лучшие альтернативы SignalR, которые соответствуют моим требованиям, пожалуйста, упомяните об этом:)

2. Вы также можете выполнять вызовы сервера из клиента вместо вызовов Ajax. По сути, вы можете заменить все методы Ajax вызовами клиент / сервер с помощью SignalR. В документах приведены несколько хороших примеров, и ответы на большинство ваших вопросов можно найти здесь.