[英]What steps are needed to make this abstract?
我正在学习 .NET Core Web API。 我有一个 model class 像这样:
namespace Game.Models
{
public class Game
{
public int GameId { get; set; }
public string Question { get; set; }
public string [] Options { get; set; }
public string Answer { get; set; }
}
}
问题是我有一个有多个答案的游戏,所以我需要
public string[] Answer { get; set; }
如何在我的游戏 class 中创建此行为? ^
我想过这个:
public class Answers
{
private string ans;
private string[] anss;
public Answers(string answer)
{
ans = answer
}
public Answers(string [] answers)
{
anss = answers
}
}
我考虑过使用接口,但我认为这不是这里的用例。 我试图把所有东西都打成一个结来理解这一点。 对于任何人的帮助,我将不胜感激。
我认为这个问题不是技术性的,而是结构性的。 如果我理解正确,您想要两种类型的游戏:
因此,考虑到这一点,您可以创建 Enum,如下所示:
public enum GameType
{
SingleAnswer,
MultipleAnswer
}
关于这一点,我建议您可以 model 使用标准的OneToMany关系,其中Game 是 principal entity , Answer 是dependent entity 。
免责声明我将在示例中使用列表,但可以根据用例轻松替换为 arrays。
public class Game
{
public int Id { get; set; }
public string Question { get; set; }
public List<string> Options { get; set; }
public GameType Type { get; set; }
public List<Answer> Answers { get; set; }
}
public class Answer
{
public int Id { get; set; }
public string Content { get; set; }
public int GameId { get; set; }
}
因此,在向游戏添加答案的验证逻辑中,您可以使用GameType
作为有效性参数和可以链接到单个游戏的最大可能答案数。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.