C# 显示文章中图像的缩略图

C# 显示文章中图像的缩略图,c#,asp.net,thumbnails,ravendb,C#,Asp.net,Thumbnails,Ravendb,所以我有一个网站,用户可以发布文章,每篇文章至少包含一张照片。我想做的是,当我在网站上显示文章列表时,我还想在文章名称旁边显示一个缩略图 这里有一个棘手的部分:图片不是托管在我的服务器上,只是一些图片托管网站上托管的链接。另一个问题是,我不知道图像在帖子中出现的位置(它们可能在文章的开头、结尾或中间)。 在这种情况下,创建缩略图系统的最佳方法是什么 我在想也许我可以这样做:每次一篇文章被发布或编辑并存储到数据库中时,我可以扫描整个文章的图像链接,并将第一个链接存储在数据库中一个单独的值中(尽管这

所以我有一个网站,用户可以发布文章,每篇文章至少包含一张照片。我想做的是,当我在网站上显示文章列表时,我还想在文章名称旁边显示一个缩略图

这里有一个棘手的部分:图片不是托管在我的服务器上,只是一些图片托管网站上托管的链接。另一个问题是,我不知道图像在帖子中出现的位置(它们可能在文章的开头、结尾或中间)。 在这种情况下,创建缩略图系统的最佳方法是什么

我在想也许我可以这样做:每次一篇文章被发布或编辑并存储到数据库中时,我可以扫描整个文章的图像链接,并将第一个链接存储在数据库中一个单独的值中(尽管这可能有点慢)。 此外,一旦我存储了这些值,并且我必须显示缩略图,唯一的方法就是显示调整为缩略图大小的完整图像(这意味着用户必须下载多个完整大小的图像才能看到带有缩略图的文章列表)

有没有更好的办法?(您可以看到标签中使用的技术)

  • 创建在文章发布后在后台运行的缩略图任务

  • 将这些本地图片用作缩略图

      • 使用HtmlAgilityPack作为从映像主机获取映像的启动程序
      • 使用ASP.NET处理程序生成缩略图。这样,您就不必在本地存储任何内容,缩略图图像将只存在于内存中,从而无法进行热链接

      是的,但是对于100个查询/秒来说,显示每10个缩略图意味着每秒从图像生成1000个缩略图。这听起来效率很低。因为您使用的是RavenDB,所以可以使用分析器将图像url提取为单独的术语。不确定是否有一个内置分析器可以工作,或者是否需要编写自定义分析器。他们工作得很快。我不是这方面的专家,所以我不会在这里发布答案。也许你可以得到更多关于RavenDB谷歌集团的指导。关于分析仪的文档如下: