Неверный параметр - System.argumentexception - Обработка изображений - PullRequest
1 голос
/ 02 декабря 2010

следующий фрагмент кода работал нормально весь день вчера

public Image getImage()
    {
        String connectionString = "URL GOES HERE, CANT POST WORK DATA";
        Image img;
        HttpWebRequest request = WebRequest.Create(connectionString) as HttpWebRequest;
        using (HttpWebResponse response = request.GetResponse() as HttpWebResponse)
        {
            StreamReader reader = new StreamReader(response.GetResponseStream());
            img= Image.FromStream(reader.BaseStream);
        }

        return img;
    }

Он получает изображение из веб-сервиса, предоставляемого работой, я много раз использовал его вчера в течение дня, но теперь все, что я получаю, является исключениемуказано в заголовке в строке

img= Image.FromStream(reader.BaseStream);

проблема в том, что он работает для всех остальных, кроме меня (вы можете вручную ввести URL-адрес в свой браузер, и он отображает изображение там, это не работаетдля меня тоже)

У кого-нибудь есть идеи?

Спасибо

1 Ответ

0 голосов
/ 02 декабря 2010

Две вещи:

1) StreamReader не используется, он используется только для текстовых потоков, вы можете использовать response.GetResponseStream () напрямую

2) Документ для Image.FromStream доступен здесь говорит: «Вы должны держать поток открытым в течение всего времени жизни изображения.», Поэтому вы не должны создавать поток с помощью оператора «using», как он будет закрыт в конце блока.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...