Как мне внедрить систему голосования? - PullRequest
7 голосов
/ 04 марта 2010

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

  1. Для каждого ответа отображаются голоса "за", "вниз" и "Оценка".
  2. Количество голосов изменялось, когда пользователь нажимал вверх или вниз, и изображение обновлялось соответственно.
  3. Сохраните информацию в дб, как.кто голосовал, время голосования, тип голосования, userIP, ansID и т. д.

Теперь вопросы.

  1. Я использую gridviewдля отображения информации.как показать ранее проголосовавшие ответы, как проголосовавшие на следующей странице загрузки.У меня есть информация в БД, но я хочу сделать это без ущерба для производительности.Я мог бы сделать это в событии itemDatabound, но это не выглядит хорошим способом справиться с этим.Интересно, есть ли лучший способ справиться с такой ситуацией? 1016 *
  2. Переключить голоса: Когда пользователь переключает голос, что происходит за кулисами.предыдущая запись удалена или нет?я говорю, что это должно быть удалено, но хочу подтверждение.
  3. Является ли gridview хорошим способом реализации такой функциональности или нет?

1 Ответ

2 голосов
/ 04 марта 2010

Для

1) Если вы используете вид сетки, вам почти нужно идти по этому маршруту. Но нам нужны подробности о том, что вы пытаетесь сделать.

2) Когда вы повышаете, а затем понижаете тот же ответ / вопрос, его следует проверить и удалить. Помните, что вам разрешается только один голос за вопрос или ответ, поэтому ваша таблица базы данных должна быть записана так, чтобы они представляли собой уникальную строку для userID, QuestionID (учитывая, что вопрос уникален). Так что вы даже не должны позволять ему вставлять повторяющиеся строки в таблицу.

3) stackoverflow - это приложение типа mvc, вы используете веб-формы, поэтому вы можете использовать просмотр сетки или просмотр списка. Вероятно, они просто перебирают ответы и генерируют html (так как это MVC).

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