类似Gmail的标签系统

时间:2011-02-01 15:20:23

标签: c# design-patterns

我正在研究多种方法来实施类似于Gmail中的标签系统。基本上我有一个最低级别的资源,我想以标签的形式为该资源提供一些组织分组。如果有人实现了类似的东西,我想听听你的意见。我的想法是在Resource实例中List<Label>。我需要有一个有效的机制,以便根据标签或基于资源进行非常快速的搜索。

由于 迪米瑞斯

1 个答案:

答案 0 :(得分:5)

不,我不会那样做。我想考虑维护两个词典Label -> HashSet<Resource>Resource -> HashSet<Label>。这样可以快速查找两个方向。显然你应该把它封装起来。

此外,无论你做什么,都不应该将其嵌入Resource。这是一种资源,它正在维护它的标签?不。单一责任和所有这些。