2010-03-04 10 views
6

Je suis tenu d'implémenter une fonctionnalité similaire au vote par SO. J'ai essayé de rechercher des questions existantes autour de ce sujet et j'ai remarqué que la plupart des gens sont bloqués sur la façon de voter de haut en bas. Je suis passé ça. mon problème est lié à la façon de gérer après un vote a été upvoted. voici ce que j'ai fait jusqu'à maintenant.Comment mettre en place un système de vote?

  1. Votez, Ristourne et Score affichés pour chaque réponse.
  2. Le nombre de votes a été modifié lorsque l'utilisateur clique sur vers le haut ou vers le bas et que l'image est mise à jour en conséquence .
  3. Enregistrer les informations dans db like. qui a voté, le temps de vote, le type de vote, userIp, ansID, etc.

Maintenant, les questions. J'utilise un gridview pour afficher des informations.

  1. Comment puis-je montrer les réponses précédemment votées comme voté à la page suivante charger. J'ai l'information en db mais je veux faire ceci sans affecter la performance. Je pourrais le faire dans l'événement itemDatabound mais cela ne ressemble pas à une jolie façon de le gérer. Je me demande s'il existe une meilleure façon de gérer une telle situation
  2. Toggle Votes: Lorsqu'un utilisateur bascule un vote , que se passe-t-il derrière les scènes . est-ce que le précédent enregistrement a été supprimé ou non? je le dis devrait être supprimé mais je veux une confirmation .
  3. Est-ce que gridview est un bon moyen de mettre en œuvre ou non?
+2

Vous voudrez reformuler cette question, en supprimant les références à SO. Sinon, il sera transféré à Meta, où vous n'obtiendrez probablement pas une réponse utile, –

+4

@John, Mis à part la question # 2, ce n'est pas une question méta. Il demande comment implémenter une fonctionnalité spécifique en utilisant StackOverflow comme exemple. – Brandon

+0

Si vous voulez en savoir plus sur SO, adressez-vous à meta.stackoverflow.com. Si vous voulez des idées pour implémenter votre propre système de vote, je changerais le titre et spécifierais la plate-forme sur laquelle vous travaillez. –

Répondre

2

Pour

1) Si vous utilisez un gridview vous avez presque de prendre cette voie. Mais nous avons besoin de plus de détails sur ce que vous essayez de faire.

2) Lorsque vous faites une mise au point, puis que vous annulez la même réponse/question, il faut la vérifier et la supprimer. Rappelez-vous que vous n'avez droit qu'à 1 vote pour une question ou une réponse, de sorte que votre table de base de données soit écrite de manière à ce qu'il s'agisse d'une ligne unique pour un ID utilisateur, un QuestionID (étant donné qu'une question est unique). Vous ne devriez donc même pas autoriser l'insertion de lignes dupliquées dans une table.

3) stackoverflow est une application de type mvc, vous utilisez des formulaires Web, de sorte que vous pouvez utiliser un gridview ou un listview. Ils ne font probablement que boucler les réponses et générer le html (comme c'est MVC).

+0

Merci JonH pour votre réponse. D'autant plus que vous y avez répondu avant qu'il ne soit poussé à être fermé ou déplacé. Merci encore. –

+2

@Sarah Nasir - Je trouve que c'est une règle plutôt étrange de fermer un sujet parce que vous faites référence à stackoverflow. – JonH

Questions connexes