(转自dflying chen)使用Anthem.NET 1.5中的FileUpload控件实现Ajax方式的文件上传
Anthem.NET(我的介绍和比较,还有一篇)刚刚发布了其最新的1.5版本,其中很不错的一个新功能就是对文件上传功能的Ajax实现。本文将简要介绍一下该功能的使用方法。
Anthem.NET的下载与安装
Anthem.NET可以在此下载:http://sourceforge.net/project/showfiles.php?group_id=151897&package_id=168043&release_id=493609
下载之后解压缩至硬盘中的某一目录中,编译项目得到Anthem.dll。然后将其拷贝到Web站点的bin目录下:
打开Web站点的Web.config文件,在configuration>\ <system.web>\ <pages>\ <controls>中添加如下一行,注册Anthem.NET控件:
<add tagPrefix="anthem" namespace="Anthem" assembly="Anthem"/>
Anthem.NET提供了一套自己就带有Ajax功能的、继承于现有ASP.NET控件的服务器端控件。根据上面在web.config文件中的注册,这部分控件的前缀为anthem。
Anthem.NET支持ASP.NET 1.1和ASP.NET 2.0,不过本文的示例程序均基于ASP.NET 2.0。
普通的ASP.NET文件上传
先看一下普通的ASP.NET文件上传功能的实现,代码如下:
<asp:FileUpload ID="defaultFileUpload" runat="server" />
<asp:Button ID="defaultUploadButton" runat="server"
OnClick="defaultUploadButton_Click" Text="Upload" />
<asp:Label ID="defaultResultLabel" runat="server" Text=""></asp:Label>
后台代码,只是简单地将文件名和文件大小显示出来:
protected void defaultUploadButton_Click(object sender, EventArgs e)
{
defaultResultLabel.Text = string.Format("File \"{0}\" uploaded ({1} bytes).",
defaultFileUpload.FileName,
defaultFileUpload.FileBytes.Length
);
}
Anthem.NET的Ajax文件上传
Anthem.NET中的Ajax文件上传功能靠的是其自己的FileUpload控件,其实使用起来和普通的ASP.NET FileUpload控件差不多,下面是HTML部分的代码:
<anthem:FileUpload ID="anthemFileUpload" runat="server" />
<anthem:Button ID="anthemUploadButton" TextDuringCallBack="uploading..." EnabledDuringCallBack="false"
runat="server" Text="Upload" OnClick="anthemUploadButton_Click" />
<anthem:Label ID="anthemResultLabel" runat="server" Text=""></anthem:Label>
注意控件的前缀都是anthem。那个Button的TextDuringCallBack属性设置了异步回送时按钮中的文本;EnabledDuringCallBack属性让该按钮在进行异步回送时禁用,免得用户等得不耐烦。
后台代码同样是将文件名和文件大小显示出来,不过注意这一句anthemResultLabel.UpdateAfterCallBack = true;,用来在回调之后更新anthemResultLabel上的文字:
protected void anthemUploadButton_Click(object sender, EventArgs e)
{
anthemResultLabel.Text = string.Format("File \"{0}\" uploaded ({1} bytes).",
anthemFileUpload.FileName,
anthemFileUpload.FileBytes.Length
);
anthemResultLabel.UpdateAfterCallBack = true;
}
示例程序演示
示例程序的界面如下,上面部分是普通的ASP.NET文件上传,下面是Anthem.NET的Ajax文件上传:
使用普通的ASP.NET文件上传,可以看到页面有一次闪烁,不过上传功能没什么问题:
而使用下面部分的Anthem.NET的Ajax文件上传,可以看到上传时的界面(按钮禁用,文本变化):
上传完成之后,没有页面闪烁:
打开Fiddler看看HTTP请求,上面的是传统上传,下面是Ajax的,差别显而易见……
代码下载
本文提到的完整的示例程序代码:http://files.cnblogs.com/dflying/AnthemNETFileUploadDemo.zip
转载于:https://www.cnblogs.com/dequan-lee/archive/2007/04/12/710013.html
(转自dflying chen)使用Anthem.NET 1.5中的FileUpload控件实现Ajax方式的文件上传相关推荐
- 博客园电子月刊[第一期]
本版改进: 简化布局,使之更整洁. 由于客户端邮件不支持图片,去除了一些图片. 由于衡量文章标准不统一,去掉了推荐指数. 规范了文章的分类标准. 增加了作者博客链接,增强互动性. 提供订阅和退订服务. ...
- java ftp输出流_java输出流实现文件下载
//导出Excel try { HSSFWorkbook wb = carService.export(list); //调用service方法~! response.setContentType(& ...
- Post-exploitation and Persistence Techniques Against Programmable Logic Controller
PLC的后开发和持久化技术 一.摘要 二.威胁建模 三.攻击方法 (一)获取远程访问 (二)权限提升及收集信息 (三)持续化 四.攻击场景 五.结论 一.摘要 从对最近ICS重大事件的调查中可以看 ...
- 在本地测试无组件上传类上传大文件可以,在服务器上就不行,仿163网盘无刷新文件上传系统...
回复 引用 查看 2008-10-20 11:03 | fkeuem 真的很不错.谢谢. 回复 引用 查看 2008-10-20 11:20 | PuserChen 下载了,学 ...
- 上周ASP.NET英文技术文章推荐[05/06 - 05/12]
这是Dflying Chen 在上周推荐的英文文章,感觉很不错,可以一直没看完,记个笔记.别忘记了看. 本周ASP.NET英文技术文章推荐[05/06 - 05/12] 摘要 本期共有9篇文章: 强大 ...
- ASP.NET AJAX(开发代号Atlas)重要参考资源大收集
英文网站部分 http://www.google.com 或者http://search.msn.com :不必多说 ASP.NET AJAX官方网站:不用多说了-- ASP.NET AJAX Con ...
- ASP.NET Atlas简单控件介绍——InputControl,TextBox,Button和CheckBox
作者:Dflying Chen (http://dflying.cnblogs.com/) 注:本系列文章比较基础,基本为Atlas官方文档的翻译,熟悉Atlas的朋友可以跳过. 本系列有三篇文章: ...
- [转]吴某人的专栏--搜集一些最近要学习的东西 [dot net]
http://blog.csdn.net/wujunj/archive/2006/07/15/926151.aspx 博客园是个好地方.最近又回到 dot net 平台开发.收据些东西.有时间慢慢啃 ...
- Java项目:资源下载工具(java+swing)
源码获取:博客首页 "资源" 里下载! 功能简介: 下载地址.保存位置.下载设置.下载进度 文件仓库控制器: /*** @ClassName: FileStoreControlle ...
最新文章
- ensp删除静态路由命令_eNSP配置静态路由
- 5秒手机猫片也能重建猫咪3D模型,Meta提出新算法为变形物体建模 | CVPR 2022
- 数据库系统(三)——数据库安全性控制
- TypeScript里get属性的实现
- oracle 处理过程,Oracle SQL语句处理过程(转载)
- (转)创建X509证书,并获取证书密钥的一点研究
- 实验二十四、OSPF 在NBMA 环境中点到点的配置
- FPGA仿真类型简介
- 东欧视频游戏市场概况
- 分布式红锁的加锁的lua底层设计原理
- 福彩3D Matlab统计分析,基于ANSYS和遗传算法的3D打印桨叶结构优化设计的制作方法...
- Python3之pip加速
- 【matlab图像处理】图像直方图操作和matlab画图
- python常用颜色表示_Python命令行的常用颜色,python,字体
- 计算机函数LEN的意思,python的len函数什么意思
- java基于springboot畜牧场信息管理系统
- 伪随机生成器具体实现——杂乱的方法
- Fluter基础巩固之Dart语言详解一
- 视数字人民币为假想敌——数字美元的来龙去脉
- ​蔚来高速换电站,大家还没看懂的护城河