goback add

Asp.Net上传组件RadUpLoad(带进度条时间显示)

8379 点击·0 回帖
灯火互联
楼主

在我的企业管理系统开发的过程中,遇到的最大问题就是大文件的上传了。在asp或者php中要想上传大文件就需借助于组件(这会受到虚拟主机的限制)。但是在asp.net中大文件上传似乎要简单了很多。下面提供下asp.net大文件上传的解决方案。
贴上代码,做.net开发的应该一看就知道什么意思

55_3710_e3fe37cb9de01b2.jpg[设为封面] [删除]
1.btnSave保存文件提交按钮事件
    
[html]
/// <summary>
    /// btnSave保存文件提交按钮事件
    /// </summary>
    /// <param name="sender"></param>
    /// <param name="e"></param>
    protected void btnSave_Click(object sender, EventArgs e)
    {
        foreach (UploadedFile file in RadUploadContext.Current.UploadedFiles)
        {
            string Path = Server.MapPath(@"Uploads");
            //如果路径不存在,则创建
            if (System.IO.Directory.Exists(Path) == false)
            {
                System.IO.Directory.CreateDirectory(Path);
            }
            //组合路径,file.GetName()取得文件名
            Path = Path + "/" + file.GetName().ToString();
            //保存
            file.SaveAs(Path, true);
        }
    }
  此处代码要在上面增加  using Telerik.webControls;

2. 前台代码 顶部注册组件
[html]
<%@ Register TagPrefix="telerik" Namespace="Telerik.QuickStart" Assembly="Telerik.QuickStart" %>
<%@ Register TagPrefix="radU" Namespace="Telerik.WebControls" Assembly="RadUpload.Net2" %
3. Html页面
[html]
<radu:radprogressmanager id="Radprogressmanager1"  Width="100%" runat="server" Height="37px" />
       <radu:radprogressarea id="progressArea1" Width="100%"  runat="server"></radu:radprogressarea>
        
       <asp:FileUpload ID="FileUpload1" runat="server" />
       <asp:Button ID="btnSave" runat="server" Text="Button" />    
4.DLL为RadUpload.Net2.dll与 Telerik.QuickStart.dll ,RadUpload.Net2.xml都在BIN目录下
5.  webconfig配置
[html]
  <httpModules>
  

      <add name="RadUploadModule" type="Telerik.WebControls.RadUploadHttpModule, RadUpload.Net2"/>  

    </httpModules>  

<httpHandlers>  

<add verb="*" path="Telerik.RadUploadProgressHandler.aspx" type="Telerik.WebControls.RadUploadProgressHandler, RadUpload.Net2"></add>  

  </httpHandlers>  

<!--此处必须有要httpRuntime配置,否则报DNSerror,而不能上传-->  

<httpRuntime maxRequestLength="2097151" executionTimeout="3600"/>


喜欢0 评分0