我想知道我的架构是否有问题,或者我是否需要快速修复。
我的页面上有以下内容:
<div ID="UploadDashboardDecorationZone">
<fieldset id="UploadDashboard">
<legend>Upload Dashboard</legend>
<telerik:RadUpload ID="UploadDashboardSelector" Runat="server" Width="235px" AllowedFileExtensions=".xml" MaxFileInputsCount="1" ControlObjectsVisibility="None" />
</fieldset>
<div class="BottomButton">
<telerik:RadButton ID="SubmitUploadDashboardButton" Runat="Server" Text="Upload" OnClientClicked="CloseUploadDashboard" />
</div>
</div>
用户选择他们想要上传的文件,然后按下SubmitUploadDashboardButton。
然后我有以下服务器端代码:
protected void Page_Init(object sender, EventArgs e)
{
if (Request.Files.Count > 0) HandleUploadedFile();
}
这一切都很棒。上传的文件已响应,我在页面上看到了更改。唯一的问题是我将页面的请求HTTP方法保留为POST而不是GET。这意味着如果用户刷新页面,就会发生不好的事情。
以前,我使用了以下代码段来解决此问题:
Page.Response.Redirect(Page.Request.Url.ToString(), true);
不幸的是,这对我不起作用了。我不希望重新加载页面时发生闪烁(除了重新加载时出现的一些代码问题)。
这里有什么其他选择?如果我使用UpdatePanel包装UploadDashboardDecorationZone
,则Request.Files将为0。
是否存在常见的快速代码修复方法?或者我在理解文件上传过程的工作原理时遗漏了哪些内容?
感谢。
答案 0 :(得分:1)
我不知道在页面更改时绕过“flash”的方法,除非您使用Ajax
进行调用,而根本不需要重新加载页面。