我试图将34 MB文件上传到斑点上,但这引起了我的错误

    XML Parsing Error: no element found
Location: http://127.0.0.1:83/Default.aspx
Line Number 1, Column 1:

我该怎么办...。如何解决


我能够上传大小500kb的小文件。但是我有一个大小34 MB的文件,要上传到我的斑点容器中

我尝试了它

protected void ButUpload_click(object sender, EventArgs e)
        {
            // store upladed file as a blob storage
            if (uplFileUpload.HasFile)
            {
                name = uplFileUpload.FileName;
                // get refernce to the cloud blob container
                CloudBlobContainer blobContainer = cloudBlobClient.GetContainerReference("documents");

                // set the name for the uploading files
                string UploadDocName = name;

                // get the blob reference and set the metadata properties
                CloudBlob blob = blobContainer.GetBlobReference(UploadDocName);
                blob.Metadata["FILETYPE"] = "text";
                blob.Properties.ContentType = uplFileUpload.PostedFile.ContentType;

                // upload the blob to the storage
                blob.UploadFromStream(uplFileUpload.FileContent);

            }
        } 

但是我无法上传。.任何人都可以告诉我如何做...。

有帮助吗?

解决方案

必须使用块斑点上载大于64MB的斑点。您将文件分解为块,上传所有块(将每个块与唯一的字符串标识符相关联),最后,您将块ID列表发布到blob中,以一口气提交整个批次。

还建议将块上载在大小小于64MB的大斑点中。在网络连接中打ic或通过Internet进行路由非常容易,可以在非常大的上传中丢失一两个帧,这会破坏或使整个上传失败。使用较小的块来减少您对宇宙事件的接触。

此讨论线程中的更多信息: http://social.msdn.microsoft.com/forums/en-nz/windowsazure/thread/f45746-a695-40ff-9e49-ffe4c99b28c7

其他提示

首先,我将一些登录到项目以尝试跟踪问题。您想的地方可能不会发生。也可能存在权限错误。尝试将一些虚拟数据添加到数据库中。如果仍然失败,那可能是一个潜在的问题。

但是,通过一些调试,记录和一些代码审查来对其进行追踪,我敢打赌,您可以尽快解决问题的底部。这也将有助于使您的代码更强大。

您可以在这里使用斑点。我认为这是您的Web请求大小的问题。您可以通过增加元素中的maxrequestLength属性的数量来更改Web.config中的此设置。如果您要发送500kb的块,那么您将浪费带宽并降低性能。发送更大的数据,例如每块1-2 MB。请参阅我的Silverlight或基于HTML5的上传控件,以进行大块上传。 选择您的Azure文件上传控件:Silverlight和TPL或HTML5和Ajax

使用Blob传输实用程序下载和上传所有斑点文件。

它是一种以有效的方式处理数千个(小/大)斑点转移的工具。

二进制和源代码,此处: http://bit.ly/blobtransfer

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top