Windows Azure:无法将34 MB文件上传到斑点
-
26-09-2019 - |
题
我试图将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