APP下载

Asp.Net快速搭建在线图片分享网站

2018-12-17孙伟

电脑知识与技术 2018年25期
关键词:文件名字段控件

孙伟

摘要:随着个人手机相机普及,分享好的照片和朋友交流已成为很多人的需求。利用Asp.Net动态网页技术,使用Ado.net数据库和DataList控件可以快速实现此功能。DataList控件是数据库绑定控件,可以自定义的格式显示各种数据源的字段,用户可以灵活的构建出需要的页面。

关键词:数据库;Fileupload控件;DataList控件

中图分类号:TP393 文献标识码:A 文章编号:1009-3044(2018)25-0057-02

Asp.net Quickly Builds an Online Photo Sharing Site

SUN Wei

(Dept. (Teacher's college) of XiShuangBanNa Vocational and Technical College, Jinghong 666100, China)

Abstract: With the popularization of personal mobile phone cameras, sharing good photos and communicating with friends has become the demand of many people.With Asp.Net dynamic web technology, you can do this quickly using the Ado.net database and DataList controls.DataList controls are database-bound controls that display fields from a variety of data sources in a custom format, giving users the flexibility to build the required pages.

Key words: database;fileupload control;dataList control

现如今随着手机相机等拍照设备的普及,分享拍到的照片已成为大多数用户的习惯,而使用Asp.net加上数据库,就能快速搭建一个可供用户分享照片的网站。

网站由一个网页一个数据库文件和一个上传图片存放文件夹组成,其功能分别如下:

首页提供浏览图片上传图片管理图片功能。数据库文件存放上传的图片文件名,以供首页读取。上传图片文件夹用于存放上传的图片文件。数据库翻用sqlserver数据库,只有一张表Tb1,其中两个字段,一个字段为id字段、主键、类型为bigint、设置标识规范增量种子为1,让其自动增加,用来记录上传图片的序号;一个字段为mz类型为varchar(50),用来记录上传图片名。

新建网站,在网站根目录下web.config配置信息文件中添加代码用于连接数据库:

首页文件页面部分拖入一个上传控件Fileupload1,一个按钮button1,一个数据控件DataList1。源代码如下,“//”后为注释内容:

//用按钮单击来触发图片上传事件

onitemcommand="DataList1_ItemCommand" DataKeyField="id">//设置DataList控件的控件生成事件和数据库绑定关键字,样式设置代码略。

图片显示

图片编号:

//绑定id字段,显示文件序号

//綁定mz字段,显示文件名

//显示缩略图

//删除按钮事件,先弹出提示确认用户是否要删除图片

{DataList1.SelectedIndex = e.Item.ItemIndex;

bind();}

if (e.CommandName == "back")//返回命令

{DataList1.SelectedIndex = -1;

bind(); }

if (e.CommandName == "delete")//删除命令

{ LinkButton lb = (LinkButton)e.Item.FindControl("LinkButton1");

if (conn.State.Equals(ConnectionState.Closed))

{ conn.Open(); }

string n = lb.Text;

SqlCommand cmd = new SqlCommand ("delete from Tb1 where mz=@mz", conn); //將数据库中该文件名记录删除。

cmd.Parameters.AddWithValue("@mz",n );

cmd.ExecuteNonQuery();

conn.Close();

bind();

string s = Server.MapPath(@"img/") + n;

File.Delete(s); }}} //将上传文件夹中该文件删除。

程序使用Microsoft Visual Studio 2010和SQL Server 2008开发,在windows7下调试成功,本程序思路很简单,用户可以在页面中使用上传控件上传图片,上传时后台代码会自动检测文件类型和自动更名,上传成功后在下方DataList控件会以表格的形式显示已上传图片的序号、新的文件名、图片缩略图及删除按钮,同时将新文件名写入数据库文件中;用户单击文件名可以触发select命令,显示大图,在大图窗口点击返回可以回到原始状态;下方的删除按钮可以删除图片,经过二次确认后,将图片在数据库中的数据清空,同时用File的Delect方法将文件从硬盘中删除。

DataList控件是.NET数据库绑定控件中的一员,以表的方式绑定数据源,其显示数据的格式可以在创建的模板中定义,能为项、交替项、选定项和编辑项创建模板。该控件也可以使用标题、脚注和分隔符模板自定义整体外观,还可以一行显示多个数据行,具有很强大的灵活性,用户可以在数据库绑定的基础上构建出各种版式的页面。但是DataList控件本身不支持数据分页,插入等,编程者需要通过自己编写方法完成这些功能。只有认真学习它的各种属性事件和方法,才能在动态网页制作中灵活使用DataList数据库控件。

参考文献:

[1] 陈向东.ASP.NET程序设计案例教程[M].北京:清华出版社,2014.

【通联编辑:王力】

猜你喜欢

文件名字段控件
文件名批量管理方法浅析
图书馆中文图书编目外包数据质量控制分析
CNMARC304字段和314字段责任附注方式解析
ASP.NET服务器端验证控件的使用
无正题名文献著录方法评述
关于CNMARC的3--字段改革的必要性与可行性研究
Spreadsheet控件在Delphi数据库系统中的编程与应用
基于VC++6.0的文件名批量转换