2014-11-20 54 views
0

我是一名ASP.NET MVC4初學者,我正嘗試創建一種博客類型。我在模型中創建關係時遇到問題。我的問題的背景是,我有一個包含用戶信息的模型(Users.cs),一個包含帖子信息的模型(Posts.cs)以及包含評論信息的第三個模型(Comments.cs)。在ASP.NET MVC4模型中指定關係

這樣用戶就可以有很多帖子,但帖子只能屬於一個用戶,
用戶可以有很多評論,但評論只能屬於一個用戶,
後可以有很多評論,但評論只能屬於一個職位,

我的問題是,我該如何編寫這三個模型?到目前爲止,我有這樣的:

public class Users 
{ 
    public int UserID { get; set; } 
    public string Firstname { get; set; }  
    public string Lastname { get; set; } 
    public DateTime DOB { get; set; } 
    public string Sex { get; set; } 
    public string Email { get; set; } 
    public DateTime RegDate { get; set; } 
    public string Username { get; set; } 
    public string Password { get; set; } 
    public string PasswordSalt { get; set; } 

    public virtual List<Posts> Post { get; set; } 
    public virtual List<Comments> Comment { get; set; } 
} 

class Posts 
{ 
    public int PostID { get; set; } 
    public string PostTitle { get; set; } 
    public string PostContent { get; set; } 
    public DateTime PostDate { get; set; } 
    public int AuthorID { get; set; } 
    public int CommentID { get; set; } 

    public virtual List<Comments> Comment { get; set; } 
    public virtual Users user { get; set; } 
} 

public class Comments 
{ 
    public int CommentID { get; set; } 
    public string Comment { get; set; } 
    public DateTime CommentDate { get; set; } 
    public int AuthorID { get; set; } 
    public int PostID { get; set; } 

    public virtual Posts post { get; set; } 
    public virtual Users user { get; set; } 
} 

請如何正確寫出三個模型?幫幫我!!!

+0

我猜這是實體框架?什麼不工作/你得到什麼錯誤? – Wiseguy 2014-11-20 18:59:00

回答

1

您已強制鍵入模型類,並且您已正確使用它們。您只需要刪除指向ID的多餘屬性 - Comments不需要指向作者的int AuthorID,該作者已有Users user

刪除這些屬性:

class Posts 
{ 
    public int AuthorID { get; set; } 
    public int CommentID { get; set; } 
} 

public class Comments 
{ 
    public int AuthorID { get; set; } 
    public int PostID { get; set; } 
} 
+0

感謝智能。會再試一次,讓你知道進展情況。 – ibnhamza 2014-11-20 20:41:26

+0

忘記感謝Aaroninus回答我的問題。抱歉。感激。 – ibnhamza 2014-11-20 20:44:29