Подтвердить что ты не робот

Не удалось найти FromStream в классе Image

У меня есть следующий код:

Image tmpimg = null;
HttpWebRequest httpWebRequest = (HttpWebRequest)HttpWebRequest.Create(url);
HttpWebResponse httpWebReponse = (HttpWebResponse)httpWebRequest.GetResponse();
Stream stream = httpWebReponse.GetResponseStream();
return Image.FromStream(stream);

В последней строке, когда я набираю Image., FromStream отсутствует в списке. Что я могу сделать?

4b9b3361

Ответ 1

Вам, вероятно, потребуется using System.Drawing;.

Ответ 2

Более подробный пример с использованием и требуемыми пространствами имен.

using System.Net;
using System.IO;
using System.Drawing;

public static Image GetImageFromUrl(string url)
    {
        HttpWebRequest httpWebRequest = (HttpWebRequest)HttpWebRequest.Create(url);

            using (HttpWebResponse httpWebReponse = (HttpWebResponse)httpWebRequest.GetResponse())
            {
                using (Stream stream = httpWebReponse.GetResponseStream())
                {
                    return Image.FromStream(stream);
                }
            }
    }

Надеюсь, это сэкономит вам некоторое время, так как вы можете просто быстро скопировать и вставить в свое решение.

~ Ура!!

Ответ 3

попробуйте следующее:

    using System.Drawing;
    using System.IO;
    using System.Net;

    public static Image GetImageFromUrl(string url)
    {
        using (var webClient = new WebClient())
        {
            return ByteArrayToImage(webClient.DownloadData(url));
        }
    }

    public static Image ByteArrayToImage(byte[] fileBytes)
    {
        using (var stream = new MemoryStream(fileBytes))
        {
            return Image.FromStream(stream);
        }
    }

Ответ 4

btw, вам также нужно добавить ссылку на System.Drawing.dll, добавление с помощью System.Drawing недостаточно.