我正在尝试在ASP.NET MVC中构建Article-Tags关系模型。有些文章可以有多个标签(例如:搞笑,傻瓜,严肃等)来描述文章的类型。我正在考虑两种方法来建立这种关系:
1.在文章和标签之间建立多对多的关系。
public class Article
{
public int Id { get; set; }
public string Name { get; set; }
public IList<Tag> Tags { get; set; }
}
public class Tag
{
public byte Id { get; set; }
public string Name { get; set; }
public IList<Article> Articles { get; set; }
}
制作所有标记名称的枚举,并在文章中包含标记列表。
public enum Tag
{
Funny = 1,
Fools = 2,
Cute = 3,
Food = 4,
}
有人能建议我两种方法之间的最佳方法吗?或任何其他方法?
谢谢你的进步。答案 0 :(得分:0)
“最佳”有点主观,但是通过许多桌面设计,您会发现查询更容易。如果您使用标签列表并决定要查找特定类型的文章,则必须先解析标签字段。这并非不可能,但绝对不如拥有额外的桌子。
如果您只需要向表中添加记录而不是重新编译软件,那么动态创建新标记也会更容易。