如何编写c# /ASP程序.基于.NET MVC 3(razor),简单,图片库

本文关键字:razor 简单 MVC 图片库 NET 何编写 ASP 基于 程序 | 更新日期: 2023-09-27 18:01:38

我可以在Javascript中通过将一系列缩略图作为数组来实现这一点。然后我知道我是在第一张照片上,还是最后一张照片上,并可以根据它显示控件。

如何在服务器端使用c#/ASP高效地完成这一点?. NET MVC 3(razor)?例如,在我的网站上,这是19张照片中的一张。我想添加next/prev功能。

我是否必须拉出整个照片数组,解析当前照片,确定它是第一个还是最后一个,然后构建下一个/上一个按钮?

如何编写c# /ASP程序.基于.NET MVC 3(razor),简单,图片库

当有一个图片库时,有一张照片来自许多照片,当有一个概念像x项来自y项,其中x < y,那么我们都想到分页。图片库几乎就像一个网格,有一个项目和两个按钮,用于进入下一页和上一页。如果您想自己实现分页,则不需要获取所有照片并将它们与当前照片进行比较以创建下一步/上一页按钮。您所要做的就是缓存当前项目索引和所有照片的计数,并在每次渲染时计算是否需要渲染下一个、上一个或下一个和上一个按钮。

一个完整的页面加载每个图像是低效的,缓慢的,将把你的访问者很快离开你的网站。

我最近创建了一个相当快的ASP。. NET MVC图片库使用以下技术:

  1. 当访问者点击某个文件夹时,将向服务器发送ajax请求,请求收集该文件夹的缩略图(数据以JSON格式返回)
  2. 缩略图和其他UI组件是使用名为Knockout.js的模型视图-视图-模型框架渲染的(顺便说一句,它很棒!)从服务器检索到的信息以JSON格式直接传递给knockout绑定模型,因此您不必进行任何序列化或封送处理。
  3. 当用户点击一个特定的缩略图,ajax调用发出到服务器,检索包含图像信息的JSON对象:a)主图像URL c)下一个和前一个图像(如果有的话)d)退出信息c)该图像的评论,等等。
  4. Knockout.js知道如何渲染prev和next箭头(如果有的话),以及所有其他信息到UI视图模型,所以它们会自动刷新。

如果你结合一些服务器端缓存,你会有一个非常快的照片库应用程序。

干杯! !

伊万

您没有指定客户端技术,Silverlight, ASP。asp.net mvc, asp。. NET Webforms, WPF, Winforms..概念如下:

  1. 选择客户端/演示技术
  2. 决定照片将从哪里来(数据库,Webservice(前端数据库))
  3. 创建获取特定系列(相册,用户,全局)的下一张和上一张照片的方法
  4. 在向前或向后(按钮/图像)点击时调用这些方法。

您可以通过以下几种方式实现:

  1. 创建一个aspx页面,该页面获取第一张照片,并创建调用该aspx页面的按钮,但根据需要使用下一张或上一张照片的查询字符串。这个解决方案会导致回发,所以你需要决定这是否适合你。
  2. 创建一个基于查询字符串的aspx页面,通过jQuery ajax调用它。
  3. 创建一个ASHX文件,该文件为查询字符串参数返回不同的图像,并将其作为图像的SRC。

这三种方法允许不同级别的交互与回发。如果您决定走哪条路线,我们可以帮助您到达那里

我不知道你为什么在c#中这么做。在c#中,我将使用ajax调用。为此,我将只加载第一个图像和最初的总图像计数。

根据总计数和当前图像没有显示上一页和下一页按钮。

单击next和prev按钮,使用ajax调用从db中获取相应的图像。

我不知道如何使用,但有很多jquery插件显示画廊