文件上载控件无法正常工作 [英] File Upload Control is not working

查看:141
本文介绍了文件上载控件无法正常工作的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

文件名和扩展名是空的。请帮助。

aspx文件code:

 < TR>
  < TD合并单元格=3的风格=高度:0像素>
    < D​​IV ID =trFile=服务器级=inlineGridAddAddress>
      &所述;表CELLPADDING =0CELLSPACING =0>
        &所述; TR>
          &所述; TD>
            < D​​IV CLASS =formFieldName>
              < ASP:的RequiredFieldValidator ID =reqFile=服务器
                  的ControlToValidate =文件上传的ErrorMessage =请选择文件
                  的ValidationGroup =保存的CssClass =验证>< / ASP:&的RequiredFieldValidator GT;
            < / DIV>
          < / TD>
        < / TR>
        &所述; TR>
          &所述; TD>
            < ASP:标签ID =lblFile=服务器>文件:LT; / ASP:标签>
          < / TD>
          &所述; TD>
            < D​​IV>
              < ASP:文件上传ID =文件上传=服务器/>
            < / DIV>
          < / TD>
          < TD类=tdformFieldValueLogin的风格=宽度:350像素;填充左:50像素>
            < ASP:ImageButton的ID =btnFileUploadSave=​​服务器的ValidationGroup =保存
                的ImageUrl =〜/ App_Themes文件/默认/图像/ update.png工具提示=保存
                HEIGHT =18像素的onclick =btnFileUploadSave_Click/>
            < ASP:ImageButton的ID =btnFileUploadCancel的ImageUrl =〜/ App_Themes文件/默认/图像/ cancel.png
                =服务器工具提示=取消HEIGHT =18像素/>
          < / TD>
        < / TR>        &所述; TR>
          &所述; TD>
            < D​​IV CLASS =formSmallTextAreaName>
              < ASP:标签ID =lblDescription=服务器>简介:< / ASP:标签>
            < / DIV>
          < / TD>
          &所述; TD>
            < D​​IV CLASS =formSmallTextAreaValue>
              < ASP:RegularEx pressionValidator ID =revNote
                  =服务器的ControlToValidate =txtDescription
                  ValidationEx pression =^ [\\ S \\ S] {0,4096} $
                  文本=最大4096个字符是允许的。
                  的CssClass =验证显示=动态>
              < / ASP:RegularEx pressionValidator>
              < ASP:文本框ID =txtDescription
                  =服务器的CssClass =textEntry1
                  的TextMode =多行MAXLENGTH =4096WIDTH =218px>
              < / ASP:文本框>
            < / DIV>
          < / TD>
        < / TR>
      < /表>
    < / DIV>
  < / TD>
< / TR>

CS文件code:

 保护无效btnFileUploadSave_Click(对象发件人,ImageClickEventArgs E)
    {
        字符串路径=使用Server.Mappath(。)+\\\\ \\\\文件+ this.fileUpload.FileName;
        字符串fileExtension = System.IO.Path.GetExtension(this.fileUpload.FileName).ToLower();
        如果(fileExtension ==名.txt|| fileExtension ==名为.doc|| fileExtension ==的.docx|| fileExtension ==.ZIP|| fileExtension ==.rar程序|| fileExtension == 的.cs|| fileExtension ==.PPT|| fileExtension ==.PDF|| fileExtension ==html的|| fileExtension ==.JPG|| fileExtension ==符.gif| | fileExtension ==.BMP|| fileExtension ==巴纽|| fileExtension ==名为.tif|| fileExtension ==.rm的|| fileExtension ==.MP3|| fileExtension ==的.xls)
        {
            this.fileUpload.PostedFile.SaveAs(路径);
        }
    }


解决方案

如果你把你的UploadControl在一个UpdatePanel(阿贾克斯的东西),它不会被默认的工作。

看看下面的链接

<一个href=\"http://geekswithblogs.net/ranganh/archive/2008/04/01/file-upload-in-updatepanel-asp.net-ajax.aspx\">File上传的UpdatePanel,ASP.NET AJAX

File name and extension are empty. Please help.

ASPX FILE CODE:

<tr>
  <td colspan="3" style="height:0px">
    <div id="trFile" runat="server" class="inlineGridAddAddress">
      <table cellpadding="0" cellspacing="0">
        <tr>
          <td>
            <div class="formFieldName">
              <asp:RequiredFieldValidator ID="reqFile" runat="server"
                  ControlToValidate="fileUpload" ErrorMessage="Please select File"
                  ValidationGroup="Save" CssClass="Validations" ></asp:RequiredFieldValidator>
            </div>
          </td>
        </tr>
        <tr>
          <td>
            <asp:Label ID="lblFile" runat="server">File:</asp:Label>
          </td>
          <td>
            <div>
              <asp:FileUpload ID="fileUpload" runat="server" />
            </div>
          </td>
          <td class="tdformFieldValueLogin" style="width:350px;padding-left:50px">
            <asp:ImageButton ID="btnFileUploadSave" runat="server" ValidationGroup="Save"
                ImageUrl="~/App_Themes/Default/images/update.png" ToolTip="Save"
                Height="18px" onclick="btnFileUploadSave_Click"/>
            <asp:ImageButton ID="btnFileUploadCancel" ImageUrl="~/App_Themes/Default/images/cancel.png"
                runat="server" ToolTip="Cancel" Height="18px" />
          </td>
        </tr>

        <tr>
          <td>
            <div class="formSmallTextAreaName">
              <asp:Label ID="lblDescription" runat="server">Description:</asp:Label>
            </div>
          </td>
          <td>
            <div class="formSmallTextAreaValue">
              <asp:RegularExpressionValidator ID="revNote"
                  runat="server" ControlToValidate="txtDescription"
                  ValidationExpression="^[\s\S]{0,4096}$"
                  Text="Maximum 4096 characters are allowed."
                  CssClass="Validations" Display="Dynamic">
              </asp:RegularExpressionValidator>
              <asp:TextBox ID="txtDescription"
                  runat="server" CssClass="textEntry1"
                  TextMode="MultiLine" MaxLength="4096" Width="218px">
              </asp:TextBox>
            </div>
          </td>
        </tr>
      </table>
    </div>
  </td>
</tr>

CS FILE CODE:

protected void btnFileUploadSave_Click(object sender, ImageClickEventArgs e)
    {
        string path = Server.MapPath(".") + "\\Files\\" + this.fileUpload.FileName;
        string fileExtension = System.IO.Path.GetExtension(this.fileUpload.FileName).ToLower();
        if (fileExtension == ".txt" || fileExtension == ".doc" || fileExtension == ".docx" || fileExtension == ".zip" || fileExtension == ".rar" || fileExtension == ".cs" || fileExtension == ".ppt" || fileExtension == ".pdf" || fileExtension == ".html" || fileExtension == ".jpg" || fileExtension == ".gif" || fileExtension == ".bmp" || fileExtension == ".png" || fileExtension == ".tif" || fileExtension == ".rm" || fileExtension == ".mp3" || fileExtension == ".xls")
        {
            this.fileUpload.PostedFile.SaveAs(path);
        }
    }

解决方案

If you're putting your UploadControl in an UpdatePanel (Ajax stuff), it won't work by default.

Check out the following link

File Upload in UpdatePanel, ASP.NET AJAX

这篇关于文件上载控件无法正常工作的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆