2015-06-17 258 views
4

我在做一個學校項目,想法是: 每個人都可以登錄創建一個建議。 每個人都可以登錄並投票(upvotes/downvotes)建議。asp.net mvc 5投票系統

到目前爲止,我有: 創建我的建議模式:

namespace Democracy.Models 
{ 
public class Suggestion 
{ 
    public int SuggestionId { get; set; } 
    public string Headline { get; set; } 
    public string ImageUrl { get; set; } 
    public string Body { get; set; } 
    public int score { get; set; } 
    public DateTime CreaationDate { get; set; } 
    public Vote Votes { get; set; } 
    } 
} 

和我架式這使我有我的控制器。

現在票...我創建了一個投票模型

namespace Democracy.Models 
{ 
public class Vote 
{ 
    public int VoteId { get; set; } 
    public bool Value { get; set; } 
    public string UserId { get; set; } 
    } 
} 

然後這個想法是,用戶可以點擊向上/向下表決的建議,但林不知道如何實現它,並有東西告訴我我在一個錯誤的路徑..

任何點在正確的方向將不勝感激。

編輯:即時通訊沒有考慮製作upvote & downvote按鈕的建議,然後當我點擊「upvote」我創建一個投票與userId,建議ID然後voteValue ..好還是壞的方法?

回答

0

我會建議檢查stakoverflow投票的問題和答案。您需要在值字段中使用整數類型。

public class Vote 
{ 
    public int VoteId { get; set; } 
    public int Value { get; set; } 
    public string UserId { get; set; }  
} 

然後在每次點擊它會增加數字。如果你對它們感到滿意,請使用Javascript框架。所以在客戶端,您可以編寫一個處理程序來使用異步更新來增加值。

  • 編輯: 請在下面的鏈接找到我的答案。我在那裏創建了代碼。

https://gist.github.com/MisterFantastic/2718f264c0b1ff774d33

+0

是的,我知道,我必須遞增/遞減票......但現在如何使用asp.net MVC和剃刀引擎實現它,我會prefter保持的JavaScript出來的它。 –

+0

爲什麼讓JS擺脫它? Asp.NET MVC非常適合使用JS。如果你不打算使用JS,不妨使用我的問題中提到的WebForms – thorkia

+0

,這是一個學校項目,而asp.net MVC 5是主題,所以如果沒有,我更願意。 –