Вариант использования:
Я сделал простое фоновое приложение UWP для извлечения данных датчика температуры из подключенного Raspberry-PI3 и установил мигание синего или красного светодиода датчика в зависимости от значенияMAX_TEMP.>
PI3 работает в Windows 10 IoT Core (ОС 10.0.17763107). При запуске UWP выполняет фоновую задачу, которая через определенные интервалы времени считывает значения подключенного датчика температуры на PI3 и устанавливает подключенные светодиодные датчики.на PI3 в зависимости от ситуации (в зависимости от того, не считывается ли значение температуры чтения не превышает значение MAX_TEMP, если текущее значение температуры превышает значение MAX_VALUE, то сообщение отправляется на подключенное к IoTHub устройство в облаке, часть кода отсекается:
// Считать значение подключенного датчика температуры и превратить его в строку
var sensorValue = _temperatureSensor.TemperatureInCelsius().ToString();
if (Double.Parse(sensorValue) > MAX_TEMP)
{
// When MAX_TEMP exceeds, red led on, blue led off
_ledRed.ChangeState(SensorStatus.On);
_ledBlue.ChangeState(SensorStatus.Off);
// Create event message to send to Azure IoT Hub ...
var telemetryDataPoint = new
{
messageId = _messageId++,
message = $"Max Allowed temperature exceeded !",
deviceId = _deviceId,
maxTemp = $"{MAX_TEMP}",
temperature = sensorValue,
ledRedState = $"{_ledRed.CurrentState}",
ledBlueState = $"{_ledBlue.CurrentState}"
};
// Create message to send to Cloud (IoTHub)
var messageString = JsonConvert.SerializeObject(telemetryDataPoint);
var message = new Microsoft.Azure.Devices.Client.Message
(System.Text.Encoding.ASCII.GetBytes(messageString));
// Send to cloud ...
**// This throws the exception as shown below !!!!!
await _deviceClient.SendEventAsync(message).ConfigureAwait(false);**
}
Message thrown :
Exception thrown: 'System.MissingMethodException' in Microsoft.Azure.Devices.Client.dll
Exception thrown: 'System.MissingMethodException' in System.Private.CoreLib.ni.dll
Exception thrown: 'System.MissingMethodException' in System.Private.CoreLib.ni.dll
The thread 0xcd8 has exited with code 0 (0x0).
Thx для любого ответа!
Кр, Эммануэль Нюйттенс