3
Я пытаюсь получить блоб из базы данных, но иногда я получаю ошибку «неверный параметр»System.Drawing.Image.FromStream недопустимый параметр
в этой линии
System.Drawing.Image objimg = System.Drawing.Image.FromStream(blobstream, true);
Вот мой код:
public partial class showblob : System.Web.UI.Page
{
private System.Drawing.Image.GetThumbnailImageAbort delegateabort;
protected void Page_Load(object sender, EventArgs e)
{
// Get a handle on account, create a blob service client and get container proxy
var account = CloudStorageAccount.Parse(RoleEnvironment.GetConfigurationSettingValue("Conn"));
account.CreateCloudTableClient().CreateTableIfNotExist("tablename");
var client = account.CreateCloudBlobClient();
CloudBlobContainer container = client.GetContainerReference("tablename");
string id = Request["id"].ToString();
// Retrieve reference to a blob named "myblob"
CloudBlob blob = container.GetBlobReference(id);
BlobStream blobstream = blob.OpenRead();
if (Request["imgvd"] == "0")
{
Response.ContentType = "image/jpeg";
System.Drawing.Image objimg = System.Drawing.Image.FromStream(blobstream, true);
if (Request["thumb"] != null)
objimg = objimg.GetThumbnailImage(140, 210, delegateabort, System.IntPtr.Zero);
objimg.Save(Response.OutputStream, ImageFormat.Jpeg);
}
И есть изображение, сохраненное, потому что я уже добавить с помощью этого метода:
if (fileFoto.HasFile)
try
{
CloudBlobClient blobClient = account.CreateCloudBlobClient();
// Retrieve a reference to a container
CloudBlobContainer container = blobClient.GetContainerReference("tablename");
// Create the container if it doesn't already exist
container.CreateIfNotExist();
CloudBlob blob = container.GetBlobReference("c" + ViewState["id"].ToString());
blob.UploadFromStream(fileFoto.PostedFile.InputStream);
}
это исключение? какова фактическая трассировка стека? –
Да, это исключение ... в 'System.Drawing.Image objimg = System.Drawing.Image.FromStream (blobstream, true);' –
. Я считаю, что метод, который я использовал для добавления фотографии, не работает. , –