【发布时间】:2013-12-09 20:04:24
【问题描述】:
我想编写一个小应用程序来管理我的个人文件的文件标签。这将非常简单,但我不确定是否应该为每个唯一标签存储文件名,即:
"sharp":
file0.ext file1.ext file2.ext file3.ext
"cold":
file1.ext file2.ext
"ice":
file3.ext
或者如果我应该为每个文件名存储标签,即:
file0.ext:
"sharp"
file1.ext:
"sharp" "cold"
file2.ext:
"sharp" "cold"
file2.ext:
"sharp" "ice"
我想使用能给我带来最佳性能和/或最佳设计的方法。由于我从来没有做过这样的事情,我认为正确的方法可能不是最佳的。
只是为了提供有关该应用程序的更多信息:
我将按标签搜索文件。我所需要的只是能够输入我的标签,这样我就可以看到哪些文件匹配,然后双击打开它们等等。
我将使用 protobuffers(Marc 的版本)来保存和加载数据库。
数据库大小并不重要,因为我会在我的 PC 上使用它。
我认为我永远不会拥有超过 50K 的文件。我很可能最多有 20K,因为这些主要是个人文件,所以我不可能创建/收集更多。
编辑:我忘了提到另一个功能。由于这将是定义文件标签的同一个应用程序,因此当我选择一个文件时,我需要它来加载该文件具有的所有标签,以便在我想编辑它们时显示它们。
【问题讨论】:
标签: c# tags protobuf-net