Я что-то пропускаю в этой «голосующей» реализации с использованием ASP.NET MVC / C # / SQL? - PullRequest
1 голос
/ 19 апреля 2011

Требование: иметь большие пальцы вверх / вниз "голосовать" на данной странице. Он должен отслеживать, кто голосовал, когда и каков был их выбор. Это будет использоваться для отображения общего количества голосов, возможно, диаграммы для отображения голосов с течением времени.

Таблица SQL

  • PageId BigInt FK PK
  • UserId BigInt FK PK
  • Проголосовать TinyInt
  • DateVoted DateTime

PageId и UserId вместе являются PK для таблицы. Возможные значения для поля «Голосование»: 1 и -1. Поле DateVoted при голосовании будет установлено на DateTime.UtcNow.

Есть ли поля, которые мне не хватает, которые вы считаете важными?

Реализация на странице будет примерно похожа на YouTube.

1 Ответ

3 голосов
/ 19 апреля 2011

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

Обратите внимание, что tinyint не подписано, поэтому -1 не является опцией. Поэтому я бы использовал bit вместо этого (0 = понижающий голос, 1 = повышающий голос).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...