2010-03-04 15 views
6

Ich bin verpflichtet, eine ähnliche Funktionalität wie SO Voting zu implementieren. Ich habe versucht, einige der vorhandenen Fragen zu diesem Thema aufzusuchen und habe festgestellt, dass die meisten Leute daran festhalten, wie man oben und unten abstimmt. Ich bin vorbei. Mein Problem hängt damit zusammen, wie nach der Abstimmung einer Abstimmung verfahren wird. Hier ist, was ich bis jetzt getan habe.Wie implementiere ich ein Voting-System?

  1. Wählen Sie oben, unten und Ergebnis für jede Antwort angezeigt.
  2. Die Anzahl der Stimmen wurde geändert, wenn der Benutzer nach oben oder unten klickt und das Bild entsprechend aktualisiert wird .
  3. Speichern Sie die Informationen in db wie. die gestimmt, die Zeit der Abstimmung, die Art der Abstimmung, USERIP, ansID usw.

nun die Fragen.

  1. Ich verwende eine Gridview, um Informationen anzuzeigen. Wie zeige ich die zuvor gewählten Antworten wie auf der nächsten Seite gewählt. Ich habe die Informationen in db, aber ich möchte dies tun, ohne die Leistung zu beeinträchtigen. Ich könnte es in itemDatabound-Ereignis tun, aber es sieht nicht wie eine schöne Art, damit umzugehen. Ich frage mich, ob es eine bessere Möglichkeit gibt, um eine solche Situation zu behandeln
  2. Toggle Votes: Wenn ein Benutzer eine Abstimmung schaltet, was passiert hinter den Szenen. ist der vorherige upvoted Datensatz gelöscht oder nicht? Ich sage es sollte gelöscht werden, aber wollen eine Bestätigung.
  3. Ist Gridview eine gute Möglichkeit, solche Funktionalität zu implementieren oder nicht?
+2

Sie werden diese Frage umformulieren und die Verweise auf SO entfernen müssen. Andernfalls wird es zu Meta übertragen, wo Sie wahrscheinlich keine nützliche Antwort erhalten werden, –

+4

@John, Abgesehen von Frage # 2, dies ist keine Meta-Frage. Es wird gefragt, wie man mit StackOverflow ein spezifisches Feature implementiert. – Brandon

+0

Wenn Sie speziell über SO informiert werden möchten, fragen Sie unter meta.stackoverflow.com nach. Wenn Sie Ideen für die Implementierung Ihres eigenen Abstimmungssystems haben möchten, würde ich den Titel ändern und die Plattform angeben, an der Sie arbeiten. –

Antwort

2

Für

1) Wenn Sie eine Gridview verwenden fast Sie haben diesen Weg zu nehmen. Aber wir brauchen mehr Details darüber, was Sie zu tun versuchen.

2) Wenn Sie die gleiche Antwort/Frage upvote und dann downvote, sollte sie überprüft und gelöscht werden. Denken Sie daran, dass Sie nur 1 Stimme für eine Frage oder Antwort haben, so dass Ihre Datenbanktabelle so geschrieben werden sollte, dass sie eine eindeutige Zeile für eine Benutzer-ID ist, eine QuestionID (vorausgesetzt, dass eine Frage eindeutig ist). Sie sollten es nicht einmal erlauben, doppelte Zeilen in eine Tabelle einzufügen.

3) stackoverflow ist mvc type app, verwenden Sie webforms, so können Sie eine Gridview oder eine Listview verwenden. Sie sind wahrscheinlich nur durch die Antworten und generieren den HTML-Code (wie dies MVC ist).

+0

Danke JonH für deine Antwort. Umso mehr, als du es beantwortet hast, bevor es geschlossen oder bewegt wurde. Danke noch einmal. –

+2

@Sarah Nasir - Ich finde es eine ziemlich seltsame Regel, ein Thema zu schließen, weil Sie Stackoverflow referenzieren. – JonH

Verwandte Themen