2010-03-06 78 views
4

我的高流量内容网站,提供新闻,照片&视频(除其他事项外)工作。我们正在努力的一件事是完善我们的“相关项目”模块。如果您正在查看视频,我们会显示5个相关视频的列表。这适用于博客文章,文章等......我们的团队在标记关键字内容以及将其与适当类别相关联并将其与其他内容类型的项目关联时做了很好的工作,但是无论我们尝试何种机制显示“相关内容”,它从未接近100%准确。最好的方式来显示相关内容使用C#

有没有尝试和真正的方法来获得公平基础上的标记关键字,标题或类别名称准确的结果?我们的网站是.net(c#),并使用SQL 2005.如果您需要我详细说明,请告诉我。

谢谢!

+0

使用谷歌应用? – 2010-03-06 07:51:58

回答

1

它已经伟大的,你正在使用tags分类您的项目。 这可能是非常强大或非常弱,取决于您使用的标签。

首先:确保您使用的是有意义的标签名称。

[坏的:C#1C#1.0Ruby1Ruby-1等]

[好的:C#1C#2C#3Ruby1Ruby2等]

现在你可以建立GetRelatedItmesList方法当然是Generic并做检查。

例如是这样的:

List<T> GetRelatedItemsList<T> (T item) where T : IOurMediaItem // I used an interface here because I like them :P - it can also be a class. 
{ 
    if (item.TagCount == 1) 
    { 
     // Get related items with the same tag and based on some keywords in title 
    } 
    else 
    { 
     // First: Get all items with exactly the tags 
     // Second Get all items with relating title and append it to the list 
    } 
} 

无论哪种方式,您还可以在item.TagCount属性/方法做了switch()

+0

酷...我不知道你可以指定一个通用的类型。当然,你可以使用接口而不是泛型,但我想有时候使用实际的派生类型而不是基类型是有用的。无论如何,我很高兴看到这一点。你每天都会学到新的东西,嗯? =) – 2010-03-06 15:29:40

0

使用的标签是最简单的方式,我见得到这些类型的功能,例如,如果你是显示文章或视频是有艺术的,有趣的标签,你可以加载在艺术和乐趣的前3名的影片相关的视频部分。

我使用标签,因为它们更加灵活,但在标签保存时使用严格的规则。

我希望这有意义

+0

对。由于我们使用的某些标签非常普遍且频率很高,因此我们一直在将“最近”的内容从特定项目上最不频繁的标签中提取出来。这比从高频标签中获取最近的内容要好,但最终总会有一种情况比另一种更好。 – 2010-03-06 08:51:38

相关问题