В моем приложении asp.net MVC я планирую систему уведомлений пользователей, аналогичную SO. Вот структура таблицы, о которой я думаю:
Message table
--------------------------------
PK MsgId BigInt
FK UserId UniqueIdentifier
Body nvarchar(200)
IsRead TinyInt
DateSent DateTime
Во-первых, эта структура БД выглядит нормально? есть ли лучший способ?
Лента вверху покажет, что у пользователя есть непрочитанные сообщения. Сообщение автоматически становится прочитанным, когда пользователь посещает страницу этого сообщения (не нужно нажимать кнопку «пометить как прочитанное». [ меняет поле IsRead на 1 ]
Создать ленту так, чтобы она всегда была видна при непрочитанном сообщении, легко. Как создать его, чтобы позволить пользователю скрыть ленту , даже если у него есть непрочитанные сообщения, и НЕ загружать ленту на следующей внутренней странице, которую посещает пользователь?