gpt4 book ai didi

c# - AsyncFileUpload 回发导致双重上传

转载 作者:太空狗 更新时间:2023-10-29 23:10:53 25 4
gpt4 key购买 nike

我在网页上实现了 AsyncFileUpload 控件。此网页要求上传的文件显示在 GridView 中。
GridView 包含以下列:“文件名”、“ secret ”复选框和“删除” "按钮删除上传的文件。

由于 AsyncFileUpload 回发不会执行完整页面 回发,我需要在 OnClientUploadComplete 事件上“强制”回发AsyncFileUpload 控件,以便在上传文件后呈现 gridview。
OnClientUploadCompleteEvent 中,我使用 javascript 调用 __doPostBack。在这个回发中,我只绑定(bind)了我的GridView并显示了文件信息(我没有重新保存文件)。

问题:AsyncFileUpload 的第一个“部分”回发中,文件按预期成功上传。在我使用 __doPostBack 强制执行的第二次回传中,文件被重新上传。
您可以使用显示上传进度的 Google Chrome 来验证这一点。行为如下:
- 选择文件后,进度从 0% 增加到 100% 并上传文件。
- 在此之后,执行 __doPostBack,您可以看到上传进度再次从 0% 增加到 100%。

如何确保 Gridview 已正确填充,但文件不会被上传两次?

我附上了一个包含问题的示例解决方案:https://www.yousendit.com/download/MzZFc2ZBNDRrYUN4dnc9PQ

最佳答案

有一个更简单的解决方案

@@t0x1n3Himself the solution u gave is very simple but does not work

用更新面板名称围绕 AsyncFileUpload UpdatePanelAFU然后在 UpdatePanelAFU 中执行以下操作:

 protected void AsyncFileUpload_UpdatePanelAFU(object sender,AjaxControlToolkit.AsyncFileUploadEventArgs e)
{

if (Request.Params.Get("__EVENTTARGET") != "UpdatePanelAFU")
return;
..... rest of the code
}

尽情享受吧!

关于c# - AsyncFileUpload 回发导致双重上传,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5018044/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com