我是一名ASP.NET MVC4初学者,我正在尝试创建一种博客。我在模型中创建关系时遇到问题。我的问题的背景是,我有一个带有用户信息的模型(Users.cs),一个包含帖子信息的模型(Posts.cs),以及一个包含评论信息的第三个模型(Comments.cs)。
因此,用户可以拥有多个帖子,但帖子只能属于一个用户,
用户可以有很多评论,但评论只能属于用户,
帖子可以有很多评论,但评论只能属于帖子,
我的问题是,我该如何编写这三个模型?到目前为止,我有这个:
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 :(得分: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; }
}
指向作者。
删除这些属性:
{{1}}