【发布时间】:2014-06-28 15:49:50
【问题描述】:
我有一个 ASP.NET MVC 应用程序,其中包含通过实体框架访问的 Microsoft SQL Server 数据库。我想实现一个标签/主题标签/关键字功能。我在应用程序中有多种类型的对象,但它们都有标签,并且可以使用这些标签搜索和找到它们。
我对如何实现此功能感到困惑。
以下是我想到的一些方法: 1. 目前,每个对象的 ID 都是整数,范围从 0 到 n。这是一个问题,因为 ID 1156 可以引用多个对象:Table1 中的第 1156 行,Table2 中的第 1156 行。我是否应该将 ID 的实现更改为字符串 GUID?
我应该为标签创建一个表和一个单独的表来将关键字与对象相关联吗? (TagGuid、ObjectGuid)。此实现需要另一个查询来查找对象。
我是否应该在每个名为 Tags 的表中创建一个列并将选项卡列为字符串? “标签1标签2标签3”?就搜索查询的持续时间而言,这将如何影响性能?如果需要统计某个标签下的对象怎么办?
也在寻找其他可能的解决方案。为含糊而道歉,我不知道从哪里开始 - 我可以选择任何一种实现,但我认为可能有一种神圣的方式来完成这项任务。
【问题讨论】:
标签: c# sql-server asp.net-mvc linq search