我正在与几个班级同学建立一个学校项目。我们遇到了(轻微)问题。有效的数据保存,如系统(示例)
将会有一个'论坛',同学们可以在其中发布问题以及其他人可以提供答案/答复的地方。
我们正在使用ASP.NET Core应用程序(web api)。所以,情况如下:我们希望同学能够喜欢问题,答案和答复。
我已经构建了一些模型,我们可以做的是为每个部分(问题,答案,回复)制作一个“喜欢”表。但我认为这有点低效。
public class Question
{
public Guid Id { get; set; }
public User User { get; set; }
public string Title { get; set; }
}
public class Answer
{
public Guid Id { get; set; }
public User User { get; set; }
public string Body { get; set; }
}
public class Comment
{
public Guid Id { get; set; }
public User User { get; set; }
public string Body { get; set; }
}
现在我的问题是,什么是最有效的方式来保存这些喜欢?我已经建立了一个类似的模型,但我不确定什么是最好的。
public class Like
{
public Guid Id { get; set; }
public User User { get; set; }
}
我试着像出头添加ICollection<Like>
的问题,答案和注释的模式,但无法弄清楚如何使用这个。
我希望有人有一个解决方案。
你问题模型还需要一系列答案和一系列评论,如果您想对答案进行评论,那么这些评论也需要收集评论。我假设你的问题类也有一个正文。您可以在Like中使用枚举TypeOfPost,指定它是否适用于问题,回答或评论,然后存储相应帖子的ID。 – AsheraH
您能否为您的解决方案写出答案? @AsheraH – Peurr