我有兩個圖像clear.jpg和thumbclear.jpg,第二個是縮略圖我 從第一個用下面的代碼創建: 我沒有做任何調整尚未Azure的BLOB和縮略圖
Bitmap bitmap = new Bitmap(File.InputStream);
MemoryStream st = new MemoryStream();
try
{
bitmap.Save(st, ImageFormat.Png);
return st;
}
finally
{
bitmap.Dispose();
}
所以我上傳兩個圖像blob,我得到他們的URI並複製/粘貼到 瀏覽器。 第一個 http://127.0.0.1:10000/devstoreaccount1/media/e1a987d1-c731-4e26-9e6c-d7a63b62f661/clear.png 工作正常,
但第二個http://127.0.0.1:10000/devstoreaccount1/media/b7ba6428-9db4-4282-8991-7a8198e7126f/thumbclear.png 使我有以下錯誤:
的圖片:「http://...thumbclear.png」無法顯示,因爲它包含錯誤。
因此,我認爲它與位圖流有關。 任何幫助將不勝感激。
* *編輯 我用它來保存BLOB
public static CloudBlob SaveFileToBlob(MemoryStream stream, string blobContainerName, string filename, string extension, string contentType, int fileSize)
{
if (stream != null)
{
CloudBlobContainer _BlobContainer = SessionHelper.GetBlobContainer(blobContainerName);
var permissions = new BlobContainerPermissions();
permissions.PublicAccess = BlobContainerPublicAccessType.Container;
_BlobContainer.SetPermissions(permissions);
Guid blobid = Guid.NewGuid();
var blob = _BlobContainer.GetBlobReference(blobid.ToString() + "/" + filename);
blob.UploadFromStream(stream);
blob.Metadata["FileName"] = filename;
blob.Metadata["Extension"] = extension;
blob.Metadata["FileSize"] = fileSize.ToString();
blob.SetMetadata();
blob.Properties.ContentType = contentType;
blob.SetProperties();
return blob;
}
else
return null;
}
感謝zynaps我發現 - 無論是請提供此評論爲答案,或刪除的問題。 – Stuart 2011-04-13 09:24:36
也確保流關閉和處置 – Turowicz 2014-06-10 16:02:55