AsyncFileUpload hasfile获取值false

时间:2013-07-16 10:45:06

标签: c# asp.net asyncfileupload

AsyncFileUpload.HasFile在上传按钮点击时获取空值。这是我的代码。

protected void ASF_personalDocs_UploadedComplete
    (object sender, AjaxControlToolkit.AsyncFileUploadEventArgs e)
{
    if (ASF_personalDocs.HasFile)
    {
        //upload file 
        string directoryPath = Server.MapPath("~\\uploads\\SharedDocs\\" + Session["username"].ToString().ToLower());

        string pathNameWithFile = directoryPath + "\\" + e.filename.ToLower();
    }
}

protected void btnUploadPD_Click(object sender, EventArgs e)
{
    string title = txtPDTitle.Text;
    labPDTitleErr.Text = "";

    if (title != "" && **ASF_personalDocs.HasFile**)
    {
        //code goes on
    }

}

使用AsyncFileUploader上传文件后,当我点击上传按钮时,ASF_personalDocs.HasFile的值为false

1 个答案:

答案 0 :(得分:0)

我有类似的问题。我发现我正在使用的Master页面有一个UpdatePanel,它包含整个页面,其中包含fileupload。如果涉及更新面板,则您的按钮仅导致部分回发,这不会告诉服务器有关asyncfileupload的状态。无论是什么原因,你似乎都得到了部分回发。将按钮注册为回发触发器将解决该问题:

protected void Page_Load(object sender, EventArgs e)
{ AjaxControlToolkit.ToolkitScriptManager.GetCurrent(Page).RegisterPostBackControl(btnUploadPD);
}