0

フォトコンテストを管理するアプリケーションを開発しています。そのアプリケーションでは、ユーザーが選択した写真に AsyncFileUpload コントロールを使用します。サーバー側の UploadedComplete は基本的な検証を行い、必要に応じて画像をスケーリング/クリップします。

問題は、ページの送信ボタンをクリックすると、AsyncFileUpload のコンテンツが他のユーザーが送信したデータと共に送信されるため、ユーザーはサーバーからの応答を得るために 2 倍の時間待機することです (私はアップロードに 1 ~ 2 分かかる 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>

ドキュメントで見逃したものはありますか?私は一日中これに取り組んできましたが、あまり成功していません。

前もって感謝します!

4

2 に答える 2

1

このAsyncFileUploadように実際には機能しません。イベントでファイルデータを使用する場合にのみ、実際に機能しますOnUploadedComplete

弾丸を噛んで、SWFUpload のようなものを使用するか、ネイティブFileUploadコントロールを使用するだけです。

于 2010-07-12T16:50:54.937 に答える
0
private bool _justDeleted = false;

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

protected void btnDeleteLogo_Click(object sender, EventArgs e)
{
    _justDeleted = true;
于 2012-02-03T22:22:39.710 に答える