我试着得到3篇相关的文章,其中大多数标签与主文章相同。
我有这个数据库结构:
c# - 按元素选择最重复的项目-LMLPHP
当我拿到主要文章时,我得到了与文章相关的标签。然后,我将项目的IDarticle和标记列表传递给函数以获取相关的3个项目。
在文章和标签之间起粘合作用的列表是articolotag,我认为这是要检查的列表,以获取具有大多数重复标签的文章。
显然,我认为最好在服务器端用c#开发这个算法怎么对付林肯?
谢谢你的帮助

最佳答案

为了找到标签最多的前三篇文章,您可以使用ArticoloTag并在IdTag上加入自己。
LINQ可以如下所示:

ArticoloTag.Where (a=>a.IdArticolo== mainArticleId).Join(ArticoloTag, a=>a.IdTag, a=>a.IdTag, (a,b)=> b.IdArticolo).GroupBy(a=>a.IdArticolo).OrderBy(g=>g.Count()).Select(g => g.Key).Take(3)

这会收回你的3个字母。
您可以将join添加到Articolo表中以获取实际的文章

10-06 03:11