Ошибка означает, что определение класса "JSON" не найдено.
Как указал @Eric Magers, из источника кода, на который вы ссылаетесь, вы можете определить, где определен класс JSON.
Или вы также можете определить свой собственный класс "JSON", например, так:
internal class JSON
{
public JSON()
{
}
public string deviceId { get; internal set; }
public long distance { get; internal set; }
public DateTime time { get; internal set; }
}
Другой метод без определения класса "JSON", подобный этому:
string dataBuffer;
DateTime time = DateTime.UtcNow;
long inputDistance = 0;
String deviceId = "MyCSharpDevice";
dataBuffer = string.Format("{{\"deviceId\":\"{0}\",\"distance\":{1},\"time\":{2}}}", deviceId, inputDistance, time);
Message message = new Message(Encoding.UTF8.GetBytes(dataBuffer));
await deviceClient.SendEventAsync(message);
Для отправки сообщений в Azure IoT Hub с использованием протокола HTTP в C # вы можете сослаться на этот официальный пример . Примечание. Официальный образец находится в Консольном приложении, а вы используете фоновое приложение в Windows IoT Core. Типы приложений различны, но использование Azure IoT Hub SDK одинаково.