当我把图像文件上载到一个博览时,图像显然能够成功上载(没有错误)。 当我去云层储存室时,该档案存放在那里,但尺寸为0(零)。
以下是我使用的法典:
// These two methods belong to the ContentService class used to upload
// files in the storage.
public void SetContent(HttpPostedFileBase file, string filename, bool overwrite)
{
CloudBlobContainer blobContainer = GetContainer();
var blob = blobContainer.GetBlobReference(filename);
if (file != null)
{
blob.Properties.ContentType = file.ContentType;
blob.UploadFromStream(file.InputStream);
}
else
{
blob.Properties.ContentType = "application/octet-stream";
blob.UploadByteArray(new byte[1]);
}
}
public string UploadFile(HttpPostedFileBase file, string uploadPath)
{
if (file.ContentLength == 0)
{
return null;
}
string filename;
int indexBar = file.FileName.LastIndexOf( \ );
if (indexBar > -1)
{
filename = DateTime.UtcNow.Ticks + file.FileName.Substring(indexBar + 1);
}
else
{
filename = DateTime.UtcNow.Ticks + file.FileName;
}
ContentService.Instance.SetContent(file, Helper.CombinePath(uploadPath, filename), true);
return filename;
}
// The above code is called by this code.
HttpPostedFileBase newFile = Request.Files["newFile"] as HttpPostedFileBase;
ContentService service = new ContentService();
blog.Image = service.UploadFile(newFile, string.Format("{0}{1}", Constants.Paths.BlogImages, blog.RowKey));
在图像档案上上载到储存之前,HttpPostedFileBase的财产投入Stream似乎被罚款(图像大小与预期的相当!) 没有任何例外。
确实奇怪的是,在其他情况下(从工人的角色中载到电站或甚至其他图像),这项工作是完美的。 所谓“固定”方法的代码似乎完全相同,档案似乎正确,因为在正确的地点建立了无tes的新档案。
是否有任何建议? 我 dozens住了这部法典的数十次,我看不到这个问题。 欢迎任何建议。
增 编