我可以通过将一系列缩略图作为一个数组在 Javascript 中执行此操作。然后我知道我何时在第一张照片或最后一张照片上,并且可以基于此显示控件。
如何使用 C#/ASP.NET MVC 3(razor) 在服务器端有效地完成这项工作?例如,在我的网站上,有 19 张照片中的一张。我想添加下一个/上一个功能。
我是否必须拉出整个照片数组,解析出当前照片,确定它是第一张还是最后一张,然后构建下一个/上一个按钮?
我可以通过将一系列缩略图作为一个数组在 Javascript 中执行此操作。然后我知道我何时在第一张照片或最后一张照片上,并且可以基于此显示控件。
如何使用 C#/ASP.NET MVC 3(razor) 在服务器端有效地完成这项工作?例如,在我的网站上,有 19 张照片中的一张。我想添加下一个/上一个功能。
我是否必须拉出整个照片数组,解析出当前照片,确定它是第一张还是最后一张,然后构建下一个/上一个按钮?
当有一个照片库时,有许多照片中的一张照片,当有一个概念,比如x item from y items in where 时x < y
,我们都会想到分页。照片库几乎就像一个带有一个项目和两个按钮的网格,用于转到下一页和上一页。如果您想自己实现分页,则无需获取所有照片并将它们与当前照片进行比较以创建下一个/上一个按钮。您所要做的就是缓存当前项目索引和所有照片的计数,并在每次渲染时计算是否需要渲染下一个、上一个或下一个和上一个按钮。
为每张图片加载一个完整的页面效率低下、速度慢,并且会很快将您的访问者赶出您的网站。
我最近使用以下技术创建了一个相当快的 ASP.NET MVC 照片库:
如果你将它与一些服务器端缓存结合起来,你将拥有一个非常快速的照片库应用程序。
干杯!!
伊万
您没有指定客户端技术,Silverlight、ASP.NET MVC、ASP.NET Webforms、WPF、Winforms.. 概念如下。
您可以通过多种方式实现这一目标:
这三种方法允许您进行不同级别的交互与回发。如果您决定要走哪条路线,我们可以帮助您到达那里:)
我不知道你为什么在 C# 中这样做。在 C# 中执行此操作时,我将使用ajax call。为此,我最初将仅加载第一张图像和总图像数。
根据总计数和当前图像不显示上一个和下一个按钮。
单击下一个和上一个按钮时,使用 ajax 调用从 db 中获取相应的图像。
我不知道如何使用,但是有很多 jquery 插件可以显示画廊