Asp.net 在客户端Blazor中管理图像收集的最佳方法
我想建立一个滚动图像集合,我有一些关于如何进行的想法。我走了一些不正确的道路,不得不回头,所以我想我应该打开我目前的计划,以防有人能给我他们的经验,告诉我哪里可能会出错 加载 图像以二进制格式存储在SQL数据库中,通过DbContext访问并存储在DBSET中。我已将使用图像的对象从图像本身中分离出来。这允许我创建一个轻负载和一个满负载,其中轻负载加载除重部分(在本例中是图像二进制数据)之外的所有信息。这允许image showcase非常快速地填充网格,然后在后台遍历每个图像并完全加载它们 这是一个解决办法,因为我找不到或弄不出一个用于延迟加载/虚拟滚动/Interscion Observer的可靠组件 我不希望用户在加载一次这些图像后必须重新加载它们。我本以为dbset会在加载数据后存储数据,并在加载之后立即返回所有其他查询。但事实似乎并非如此。因为每次似乎都会出现加载时间 内容是这样抓取的Asp.net 在客户端Blazor中管理图像收集的最佳方法,asp.net,dbcontext,blazor,dbset,blazor-client-side,Asp.net,Dbcontext,Blazor,Dbset,Blazor Client Side,我想建立一个滚动图像集合,我有一些关于如何进行的想法。我走了一些不正确的道路,不得不回头,所以我想我应该打开我目前的计划,以防有人能给我他们的经验,告诉我哪里可能会出错 加载 图像以二进制格式存储在SQL数据库中,通过DbContext访问并存储在DBSET中。我已将使用图像的对象从图像本身中分离出来。这允许我创建一个轻负载和一个满负载,其中轻负载加载除重部分(在本例中是图像二进制数据)之外的所有信息。这允许image showcase非常快速地填充网格,然后在后台遍历每个图像并完全加载它们 这
using (var context = new SampleContext())
{
var author = context.Authors.ToList();
}
我的问题是,我是否应该将此查询的结果存储在控制器本身中
还是国家目标
或者我对dbSet有些误解,应该能够在加载一次后从内存中检索到它们吗?如果我必须在SPA中实现这一点,我将使用web api方法返回图像的URL。通过这种方式,浏览器加载图像并缓存结果。那么,在从数据库加载之前,使用HTTP缓存,然后在后续加载中以某种方式检查缓存?或者,这一逻辑全部封装在某个框架对象中?如果图像在缓存中,则不会调用web api。这是一个浏览器功能如果我必须在SPA中实现这一点,我将在web api方法中返回图像的URL。通过这种方式,浏览器加载图像并缓存结果。那么,在从数据库加载之前,使用HTTP缓存,然后在后续加载中以某种方式检查缓存?或者,这些逻辑都封装在某个框架对象中了吗?如果映像在缓存中,则不会调用web api。这是一种浏览器功能