AjaxControlToolkit的AsyncFileUpload在线部署时行为不端

时间:2011-01-01 23:37:40

标签: c# asp.net file-upload ajaxcontroltoolkit

如果重要,以下内容位于工具包弹出窗口中,其中包含更新面板。

<p>
    <asp:Label Text="Picture" runat="server" Width="75"></asp:Label>
    <ajaxToolkit:AsyncFileUpload ID="MediaPicture" runat="server" Width="200"
        OnClientUploadStarted="BlockSubmits" ClientIDMode="AutoID"
        OnClientUploadError="UnblockSubmits" PersistFile="true"
        OnClientUploadComplete="UnblockSubmits" 
    />
</p>

javascript函数只是阻止/释放提交按钮,以防止在上传过程中出现问题。

这在localhost上工作正常,但是当在GoDaddy服务器上在线部署时,我似乎无法上传几KB的文件,即使在本地我可以上传更大的文件(~2MB)......

我似乎无法找到这种行为的原因,它可能在IIS上吗?在上传完成之前,我读了一些关于应用程序池清除的内容,这可能会发生吗?

顺便说一句,以防万一,服务器端我只是从这个控件中取出图片

byte[] picture = MediaPicture.FileBytes ?? (string.IsNullOrEmpty(mediaID) ? null : Media.SelectByID(int.Parse(mediaID)).GetPicture());

关于我是否处于编辑模式还有一些额外的逻辑,如果当前记录有图片,我会把它拍到没有图片,

然后我将它存储在数据库中。

关于为什么会发生这种情况的任何想法?

谢谢!

4 个答案:

答案 0 :(得分:1)

答案 1 :(得分:0)

ajax工具包的Assync上传仍然必须有一个最大请求大小为ASP.NET的帖子。

此最大大小在应用程序的web.config和IIS内部设置。由于您使用的是第三方提供商...请尝试使用

部分中的web.config
<httpRuntime maxRequestLength="40960"/>

如果这对您没有帮助,请查看SWFUpload控件...几次保存我的皮肤。

此致

答案 2 :(得分:0)

我猜你在开发环境和生产服务器(在这种情况下是Go Daddy)中使用不同的IIS版本。你可以验证并告诉我确切的IIS版本,以便我能为你提供更好的解决方案吗?原因IIS 7.0的配置与IIS 6.0略有不同。

答案 3 :(得分:0)

我遇到了完全相同的问题,但是在IE的“本地Intranet”区域中包含网站安全设置是一种解决方法。

但是,我更新了Ajax Control Toolkit,问题彻底解决了。不再需要弄乱安全设置。