【问题标题】:Async File Upload in Asp.netAsp.net 中的异步文件上传
【发布时间】:2014-04-14 18:41:15
【问题描述】:

我知道有很多code 的示例和示例可以上传文件asynchronously,但不幸的是没有人为我工作。

我放置了更新面板,但File Uploaderupdate panel 中不起作用。 我在页面上有 4 个文本字段和一个 file uploader。我想保存所有信息并想上传不带任何postback 的文件。

我看到了AjaxFileUpload ajax 控件工具包的控件,但是当我们选择它时它会立即上传文件。但我想通过点击按钮上传文件。

请让我知道任何人有解决方案。

谢谢

【问题讨论】:

    标签: asp.net .net ajax asp.net-ajax


    【解决方案1】:

    您提到的 Ajax 控制工具包是您可以使用的 AjaxFileUpload。是的,它可以连接到一个按钮,如我链接到的页面所示。请使用它,然后具体告诉我们您在使用它时遇到了什么问题。

    【讨论】:

    • 我也看到了这个链接。上传按钮带有 ajax 控件。我不能使用单独的按钮来上传文件。
    【解决方案2】:

    我也遇到了同样的问题。我在网上看到的所有例子也对我不起作用。剥离代码后,我想我必须使用ToolKitScriptManager 而不是标准的asp:ScriptManager
    我之前没有使用过该工具包,所以我不知道这是否是最新工具包的新要求,因为我阅读的所有旧示例都使用了 ScriptManager 并说它应该可以正常工作。

    这是通过按钮单击保存的代码:

    protected void AsyncFileUpload1_UploadedComplete(object sender, AjaxControlToolkit.AsyncFileUploadEventArgs e)
    {
        AjaxControlToolkit.AsyncFileUpload afu = (AjaxControlToolkit.AsyncFileUpload)sender;
    
        if (afu.HasFile)
        {
            Session["AsyncFileUploadImage"] = afu;
        }
    
    }
    protected void AsyncFileUpload1_UploadedFileError(object sender, AjaxControlToolkit.AsyncFileUploadEventArgs e)
    {
        ...
    }
    protected void btnSave_Click(object sender, EventArgs e)
    {       
        if (Session["AsyncFileUploadImage"] != null)
        {
            this.AsyncFileUpload1 = (AjaxControlToolkit.AsyncFileUpload)Session["AsyncFileUploadImage"];
            this.AsyncFileUpload1.SaveAs(Path.Combine(Request.PhysicalApplicationPath,"images", "uploads", this.AsyncFileUpload1.FileName)); //make sure to save in directory with write permissions
            this.lblStatus.Text = "You uploaded " + AsyncFileUpload1.FileName;
        }
        else
        {
          ...
        }
    
    
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-03-02
      • 2013-04-20
      • 1970-01-01
      • 2018-06-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多