大文件上传NeatUpload简单用法
2009-03-24 10:26
344 查看
一般10M以下的文件上传通过设置Web.Config,再用VS2005自带的FileUpload控件就可以了,但是如果要上传100M甚至1G的文件就不能这样上传了,这时可以用NeatUpload来上传,步骤如下:
1,在工具箱中添加Brettle.Web.NeatUpload.dll,这个应该会怎样添加吧,我还是说一下吧,刚开始用自定义控件的时候我也不会
^_^,方法:打开VS2005--->点击'工具箱'--->选中一项,如:'常规'这项--->单击右键--->在弹出的菜
单中选'选择项'--->在弹出的窗口中选择'浏览'--->找到'Brettle.Web.NeatUpload.dll'这个文件
--->按确定就添加上了,这时工具箱中多出几个控件出来,有InputFile,progressbar 等,我们主要用这两个.
2.复制文件夹NeatUpload到根目录.
3.拖放使用上传控件InputFile和进度条ProgressBar,添加上传文件的按钮.aspx页面代码如下:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
<%@ Register Assembly="Brettle.Web.NeatUpload" Namespace="Brettle.Web.NeatUpload"
TagPrefix="Upload" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>upload</title>
<script type="text/javascript" language="javascript">
function ToggleVisibility(id, type)
{
el = document.getElementById(id);
if(el.style)
{
if(type == 'on')
{
el.style.display = 'block';
}
else
{
el.style.display = 'none';
}
}
else
{
if(type == 'on')
{
el.display = 'block';
}
else
{
el.display = 'none';
}
}
}
</script>
</head>
<body>
<form id="form1" runat="server">
<div>
<upload:InputFile id="AttachFile" runat="server"></upload:InputFile>
<asp:Button ID="Upload" runat="server" Text="上传" OnClientClick="ToggleVisibility('ProgressBar','on')" OnClick="Upload_Click"/>
<div id="ProgressBar" style="display:none; width:auto;">
<upload:progressbar id="pbProgressBar" runat="server" Inline="true" Width="500px" Height="35px" Triggers="Upload"> </upload:progressbar>
</div>
</div>
</form>
</body>
</html>
4.给上传按钮添加Upload_Click事件:
protected void Upload_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
}
}
5.注意,要还在Web.Config里进行设置:
在<system.web>中添加以下代码:
<httpModules>
<add name="UploadHttpModule" type="Brettle.Web.NeatUpload.UploadHttpModule, Brettle.Web.NeatUpload"/>
</httpModules>
最后这里是上面需要的文件和dll文件的源代码以及怎样用的例子
Brettle.Web.NeatUpload.dll源代码
NeatUpload文件夹
NeatUpload.dll Demo
1,在工具箱中添加Brettle.Web.NeatUpload.dll,这个应该会怎样添加吧,我还是说一下吧,刚开始用自定义控件的时候我也不会
^_^,方法:打开VS2005--->点击'工具箱'--->选中一项,如:'常规'这项--->单击右键--->在弹出的菜
单中选'选择项'--->在弹出的窗口中选择'浏览'--->找到'Brettle.Web.NeatUpload.dll'这个文件
--->按确定就添加上了,这时工具箱中多出几个控件出来,有InputFile,progressbar 等,我们主要用这两个.
2.复制文件夹NeatUpload到根目录.
3.拖放使用上传控件InputFile和进度条ProgressBar,添加上传文件的按钮.aspx页面代码如下:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
<%@ Register Assembly="Brettle.Web.NeatUpload" Namespace="Brettle.Web.NeatUpload"
TagPrefix="Upload" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>upload</title>
<script type="text/javascript" language="javascript">
function ToggleVisibility(id, type)
{
el = document.getElementById(id);
if(el.style)
{
if(type == 'on')
{
el.style.display = 'block';
}
else
{
el.style.display = 'none';
}
}
else
{
if(type == 'on')
{
el.display = 'block';
}
else
{
el.display = 'none';
}
}
}
</script>
</head>
<body>
<form id="form1" runat="server">
<div>
<upload:InputFile id="AttachFile" runat="server"></upload:InputFile>
<asp:Button ID="Upload" runat="server" Text="上传" OnClientClick="ToggleVisibility('ProgressBar','on')" OnClick="Upload_Click"/>
<div id="ProgressBar" style="display:none; width:auto;">
<upload:progressbar id="pbProgressBar" runat="server" Inline="true" Width="500px" Height="35px" Triggers="Upload"> </upload:progressbar>
</div>
</div>
</form>
</body>
</html>
4.给上传按钮添加Upload_Click事件:
protected void Upload_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
}
}
5.注意,要还在Web.Config里进行设置:
在<system.web>中添加以下代码:
<httpModules>
<add name="UploadHttpModule" type="Brettle.Web.NeatUpload.UploadHttpModule, Brettle.Web.NeatUpload"/>
</httpModules>
最后这里是上面需要的文件和dll文件的源代码以及怎样用的例子
Brettle.Web.NeatUpload.dll源代码
NeatUpload文件夹
NeatUpload.dll Demo
相关文章推荐
- 大文件上传NeatUpload简单用法 (转)
- 大文件上传NeatUpload简单用法 (转)
- 大文件上传NeatUpload简单用法 (转)
- 大文件上传NeatUpload简单用法
- 大文件上传NeatUpload简单用法
- 大文件上传NeatUpload简单用法&nbsp;(…
- 一个简单的jQuery插件ajaxfileupload实现ajax上传文件例子
- 一个简单的jQuery插件ajaxfileupload实现ajax上传文件例子
- 解析ajaxFileUpload 异步上传文件简单使用
- 基于 lua-resty-upload 实现简单的文件上传服务
- Brettle.Web.NeatUpload.dll支持的大文件上传
- 一个简单的jQuery插件ajaxfileupload.js实现ajax上传文件例子
- cookies的简单使用 客户端保存临时数据和上传文件的就Query.uploadify(2.xx版本)的使用
- ajaxFileUpload 异步上传文件配合Struts2的简单使用
- ajaxFileUpload 异步上传文件简单使用
- AjaxFileUpload 简单上传文件附加参数
- Brettle.Web.NeatUpload.dll支持的大文件上传
- 大文件上传 NeatUpload 控件
- 一个简单的jQuery插件ajaxfileupload实现ajax上传文件例子
- 使用NeatUpload上传文件