在【推荐】.NET批量上传控件——HtmlInputFiles 一文中有博友向我推荐了NeatUpload上传控件,于是花了点时间对该控件进行了简单的学习,感觉这个控件真的不错,不但能够支持大文件上传,而且还有上传进度条,更重要的是NeatUpload控件是为数不多的支持大文件上传的免费控件,废话不说了,下面先介绍NeatUpload控件如何使用。
NeatUpload控件下载
一、前期准备
1、下载neatupload的免费版本http://www.brettle.com/neatupload#Download;
2、访问地址http://www.brettle.com/Demo.aspx查看相应的Demo示例;
3、将Brettle.Web.NeatUpload.dll添加到工具箱;
4、将\NeatUpload-1.2.32下的NeatUpoad文件夹复制到项目根目录;
5、在Web.config的system.web节点中写入下面的配置
<httpModules>
<add name="UploadHttpModule" type="Brettle.Web.NeatUpload.UploadHttpModule, Brettle.Web.NeatUpload" />
</httpModules>
<httpRuntime maxRequestLength="400000" executionTimeout="3600" />
二、NeatUpload在.net中的运用
前台代码
<Upload:ProgressBar ID="ProgressBar1" runat="server" Inline="True"
Triggers="" />
<br />
<Upload:InputFile ID="AttachFile" runat="server" />
<br />
<br />
<asp:Button ID="BtnUP" runat="server" onclick="BtnUP_Click" Text="上 传" />
后台代码
protected void BtnUP_Click(object sender, EventArgs e)
{
if (AttachFile.HasFile)
{
string FileName = this.AttachFile.FileName;//获取上传文件的文件名,包括后缀
string ExtenName = System.IO.Path.GetExtension(FileName);//获取扩展名
string SaveFileName = System.IO.Path.Combine(System.Web.HttpContext.Current.Request.MapPath("UpLoads/"), DateTime.Now.ToString("yyyyMMddhhmm") + ExtenName);//合并两个路径为上传到服务器上的全路径
AttachFile.MoveTo(SaveFileName, Brettle.Web.NeatUpload.MoveToOptions.Overwrite);
string url = "UpLoads/" + DateTime.Now.ToString("yyyyMMddhhmmss") + ExtenName; //文件保存的路径
float FileSize = (float)System.Math.Round((float)AttachFile.ContentLength / 1024000, 1); //获取文件大小并保留小数点后一位,单位是M
}
}
附图如下
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· [AI/GPT/综述] AI Agent的设计模式综述