10 / 10 / 1
Регистрация: 27.11.2011
Сообщений: 153
1

Непостоянное исключение Cannot access a disposed object. Object name: 'System.Net.Sockets.NetworkStream'

17.10.2018, 19:50. Показов 2080. Ответов 4

Добрых времени суток. Код прост - отправляет данные на сервер и принимает результат с оного.
Исключение появляется рандомно, плюс это мобильное приложение, где нет стабильного интернета да и сама скорость так себе. Повторить у себя в офисе это исключение мне не удалось, но в логах работы софта я его вижу регулярно. Чем оно может быть вызвано?
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
CancellationTokenSource cts = new CancellationTokenSource();
cts.CancelAfter(90000);
 
using (var client = new HttpClient())
using (var formData = new MultipartFormDataContent())
{
    try
    {
        foreach (var p in parametresToSend)
            formData.Add(p.Value, p.Key);
 
        HttpResponseMessage response = await client.PostAsync(URL, formData, cts.Token);
 
        if (!response.IsSuccessStatusCode || response.Content == null)
            throw new NetworkInformationException((int)response.StatusCode);
 
        string stringContent = await response.Content.ReadAsStringAsync();
        result = JsonConvert.DeserializeObject<T>(stringContent);
    }
    catch (Exception ex)
    {
        await ex.ToLog(showAlert: false);
    }
    finally
    {
         parametresToSend.Clear();
    }
}
0

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
17.10.2018, 19:50
Ответы с готовыми решениями:

Ошибка cannot access a disposed object
Доброго времени суток!!! Есть функция, получающая список дирректорий на FTP сервере...

Необработанное исключение типа "System.Net.Sockets.SocketException" в System.dll
Доброго времени суток! Есть следующая статья: Разработка прокси-сервера на C# В самом конце есть...

Вызов внешних функций. Object reference not set to an instance of an object
Написал обычный dll на С++. Есть в ней функция которая создает объект на удаленном компе и...

NullreferenceExeption was unhandled Object reference not set to an instance of an object
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data;...

4
123 / 95 / 40
Регистрация: 01.03.2018
Сообщений: 263
18.10.2018, 13:54 2
lFreeManl, что такое parametresToSend ?
0
Администратор
Эксперт .NET
13674 / 11080 / 4534
Регистрация: 17.03.2014
Сообщений: 22,312
Записей в блоге: 1
18.10.2018, 14:57 3
Цитата Сообщение от Young Vu Посмотреть сообщение
что такое parametresToSend ?
Видимо Dictionary<HttpContent,string>
0
10 / 10 / 1
Регистрация: 27.11.2011
Сообщений: 153
18.10.2018, 21:29  [ТС] 4
Цитата Сообщение от Young Vu Посмотреть сообщение
что такое parametresToSend ?
Это KeyValuePair<string, StringContent> в Value находится json или другие текстовые данные
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
public void AddParametr(string key, string value)
{
    if (string.IsNullOrEmpty(key))
        throw new ArgumentNullException(nameof(key));
 
    if (string.IsNullOrEmpty(value))
        throw new ArgumentNullException(nameof(value));
 
    if (parametresToSend == null)
        parametresToSend = new List<KeyValuePair<string, StringContent>>();
 
    parametresToSend.Add(new KeyValuePair<string, StringContent>(key, new StringContent(value)));
}
0
123 / 95 / 40
Регистрация: 01.03.2018
Сообщений: 263
19.10.2018, 11:11 5
понятно только одно, что вы где то обращаетесь к объекту, который сборщик мусора подчистил..
но вот пока понять где это происходить не могу

Цитата Сообщение от lFreeManl Посмотреть сообщение
ет стабильного интернета да и сама скорость так себе
попробуйте протестировать, используя программы, которые ограничивают скорость
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
19.10.2018, 11:11

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Работа с System.Net.Sockets.Receive
Добр(ый/ое/ая) день/вечер/утро/ночь. :) Работаю с Socket'ми. Возник вопрос о приеме ответа на...

Ошибка object reference not set to an instance of an object
При попытке добавить %subj на форму VB выдает стандартное сообщение 'object reference not set to an...

Как правильно работать с System.Net.Sockets?
Всем привет! В общем такая задача: есть сайт: http://csskinkings.com (Не реклама) На нем аккаунты...

Object reference not set to an instance of an object
Имеется 2 класса: public class infa { public int ch_rech,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.