привязка растрового изображения к обратному потоку с сервера после POST - PullRequest
0 голосов
/ 07 сентября 2011

Я делаю обычный метод POST, и сервер возвращает поток, который является растровым изображением, затем я хочу установить свой Image1 для того потока, который я получил:

        private void GetResponseCallback(IAsyncResult asynchronousResult)
    {

        HttpWebRequest request = (HttpWebRequest)asynchronousResult.AsyncState;

        // End the operation
        HttpWebResponse response = (HttpWebResponse)request.EndGetResponse(asynchronousResult);
        HttpStatusCode rcode = response.StatusCode;

        Stream stream = response.GetResponseStream();

        Dispatcher.BeginInvoke(() => 
        {
            var bi = new BitmapImage();
            bi.SetSource(stream);
            image1.Source = bi;
        });

        response.Close();
    }

Это дает ошибку:не получить доступ к удаленному объекту.Имя объекта: 'MS.Internal.InternalMemoryStream'.

Я понимаю, почему я получил эту ошибку, потому что Stream response.Close ();и я использую диспетчер.Если я не использую Dispatcher, он выдаст неверный перекрестный поток.Как мне установить поток для моего изображения1?

1 Ответ

0 голосов
/ 07 сентября 2011

Почему бы вам не создать переменную, которая доступна как для обратного вызова, так и для потока пользовательского интерфейса?

...