System.net.sockets.socketexception в Microsoft azure?
Привет Команда
Я испытываю SocketException в своем классе readdevice-2message, что может быть результатом этого?
System.Net.Sockets.SocketException: 'A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond'
Что я уже пробовал:
using System; using System.Threading; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using Microsoft.Azure.EventHubs; namespace ReadMessageApplication { class Program { private readonly static string s_eventHubsCompartibleEndpoint = "sb://iothub-ns-university-2081416-42bc501981.servicebus.windows.net/"; private readonly static string s_eventHubsCompartiblePath = "universityiothub"; private readonly static string s_iotHubSasKey = "E****"; private readonly static string s_iotHubSasK<pre><pre lang="c#">eyName ="iothubowner";
частный статический EventHubClient s_eventhubClient;
частная статическая асинхронная задача ReceivedMessageFromDeviceAsync(string partition, CancellationToken ct)
{
ВАР eventHubReciver = s_eventhubClient.CreateReceiver ("$Default", partition, EventPosition.FromEnqueuedTime(Типа Datetime.Сейчас));
Приставка.WriteLine("создать приемник на разделе:" + раздел);
в то время как (правда)
{
если (ct.IsCancellationRequested) перерыв;
Приставка.WriteLine("прослушивание сообщений на:" + раздел);
var events = ожидание eventHubReciver.ReceiveAsync(100);
if (events == null) continue;
оператора foreach(функция eventdata функции eventdata в события)
{
данных string = кодировка.Кодировке utf8.Метода getString(функция eventdata.Тела.Массив);
Приставка.WriteLine("сообщение получено на раздел {0}:", раздел);
Приставка.WriteLine(" {0}:", data);
Приставка.WriteLine("свойства приложения (задаются устройством)");
foreach(var prop в eventData.Свойства)
{
Приставка.WriteLine(" {0}: {1}", опора.Ключ, проп.значение);
}
Приставка.WriteLine("системные свойства (задаются центром Интернета вещей)");
по каждому элементу(ВАР опору в функция eventdata.Системные свойства)
{
Приставка.WriteLine(" {0}: {1}", опора.Ключ, проп.значение);
}
}
}
}
частная статическая асинхронная задача Main(string[] args)
{
Приставка.WriteLine("сообщение устройства IOT Hub - чтение сообщения устройства в облако. Ctrl-C для выхода.\n");
var connectionString = new EventHubsConnectionStringBuilder(новый Uri(s_eventHubsCompartibleEndpoint), s_eventHubsCompartiblePath, s_iotHubSasKeyName, s_iotHubSasKey);
s_eventhubClient = EventHubClient.CreateFromConnectionString(connectionString.Метод toString());
//приемник разделов для каждого концентратора.
ВАР runtimeInfo = ждут s_eventhubClient.GetRuntimeInformationAsync();
ВАР dtwoPartition = runtimeInfo.PartitionIds;
CancellationTokenSource ct = новый CancellationTokenSource();
Приставка.CancelKeyPress += (s, e) =>
{
е.Отмена = истина;
кар.Отменить();
Приставка.WriteLine("Выход..");
};
var tasks = новый список<task>();
foreach(строковый раздел в dtwoPartition)
{
задачи.Добавить(ReceivedMessageFromDeviceAsync(раздел, КТ.Маркер));
}
Задача.WaitAll(задачи.Метод toArray());
}
}
}