繁体   English   中英

如何防止AsyncFileUpload在回发时再次发送文件?

[英]How do I prevent the AsyncFileUpload from sending the file again on postback?

我正在开发一个用于管理摄影比赛的应用程序。 在该应用程序中,我为用户选择的照片使用了AsyncFileUpload控件。 服务器端UploadedComplete进行基本验证,并根据需要缩放/剪切图像。

问题是,当我单击页面上的“提交”按钮时,AsyncFileUpload的内容与其他用户提交的数据一起发送,因此用户需要等待两倍的时间才能从服务器获得响应(我是预计照片的大小在3至7 Mb之间,需要一两分钟才能上传)。

我的表格如下所示:

<%-- ... snip - all other fields ... -->
<div style="margin-top: 20px; margin-bottom: 5px;">
    <span class="texteB"><b>Upload a photo</b></span><br />
    Browse your computer to find a photo.</div>
<div>
    <asp:AsyncFileUpload onclientuploaderror="UploadError" persistfile="true" onuploadedcomplete="fuPhoto_UploadedComplete"
        completebackcolor="#52ad0b" onclientuploadstarted="UploadStarted" id="fuPhoto"
        throbberid="throbber" runat="server" />
</div>
<div runat="server" id="throbber" style="display: none; margin: 8px 0 15px 0">
    <div style="float: left; width: 48px;">
        <img src="images/throbber.gif" /></div>
    <span class="texteV_14pt"><b>Please wait while
        <br />
        your photo is uploaded...</b></span>
</div>
<div style="margin-top: 20px; margin-bottom: 20px;">
    Please double-check your informations and press Send when ready.</div>
<div>
    <asp:ImageButton onclick="btnSubmit_Click" ImageUrl="images/bt_envoyer_demande.gif"
        runat="server" id="btnSubmit" />
</div>

我在文档中错过了什么吗? 我整天都在努力,没有取得太大的成功。

提前致谢!

AsyncFileUpload并不是真的像这样工作。 仅当在OnUploadedComplete事件中使用文件数据时,它才真正起作用。

我只是硬着头皮使用诸如SWFUpload之类的东西,或者只是使用本机FileUpload控件。

private bool _justDeleted = false;

void AsyncFileUpload1_UploadedComplete(object sender, AsyncFileUploadEventArgs e)
{
    if (_justDeleted) return;

protected void btnDeleteLogo_Click(object sender, EventArgs e)
{
    _justDeleted = true;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM