Не получается снять Event с web socket

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

await client.ConnectAsync(new Uri("ws://192.168.0.105:6001/app/ABCDEFG"), CancellationToken.None);

после этого я запускаю цикл while в котором я проверяю прервалось ли соединение, если нет то я прошу сокет отдать мне информацию которую он сейчас имеет. На первой итерации цикла сокет отдает мне информацию о том что я вошел, а на второй итерации , при получении данных программа сама выходит из цикла While . Без ошибок и без остановки. Этой командой я получаю данные с webSocket

 client.ReceiveAsync();

Вот полный код

   async void ConnectToServerAsync()
    {
        await client.ConnectAsync(new Uri("ws://192.168.0.105:6001/app/ABCDEFG"), CancellationToken.None);
        while (client.State == WebSocketState.Open)
        {
            ArraySegment<Byte> readbuffer = new ArraySegment<byte>(new byte[8192]);
            var result = await client.ReceiveAsync(readbuffer, CancellationToken.None);
            var str = System.Text.Encoding.Default.GetString(readbuffer.Array, readbuffer.Offset, result.Count);
        }
    }

В итоге на второй итерации ничего не приходит в переменную result , а цикл перестает работать , хотя соединение еще не закрыто , то есть WebSocketState.Open == Open как и должно быть

А суть в том что я хочу видеть приходящие Event с WebSocket


Ответы (0 шт):