Azure IoT-Bibliotheken für .NET
Übersicht
Azure IoT Hub ist ein vollständig verwalteter Dienst, der eine zuverlässige und sichere bidirektionale Kommunikation zwischen Millionen von Geräten und einem Lösungs-Back-End ermöglicht.
Geräte und Datenquellen in einer IoT-Lösung können von einem einfachen, mit dem Netzwerk verbundenen Sensor bis zu einem leistungsstarken, eigenständigen Computinggerät reichen. Verarbeitungsfunktionen, Arbeitsspeicher, Kommunikationsbandbreite und Kommunikationsprotokollunterstützung der Geräte können begrenzt sein. Die IoT-Geräte-SDKs ermöglichen Ihnen, Clientanwendungen für eine Vielzahl von Geräten und Back-End-Anwendungen zu implementieren.
Das Geräte-SDK für .NET erleichtert das Erstellen von .NET ausführenden Geräten, die eine Verbindung mit Azure IoT Hub herstellen können.
Das Dienst-SDK für .NET erleichtert das Erstellen von Back-End-Anwendungen mit .NET, die das Verwalten und Steuern von Geräten aus der Cloud ermöglichen.
Clientbibliothek
Verwenden Sie den .NET IoT-Geräteclient, um eine Verbindung mit Ihrem IoT Hub herzustellen und Nachrichten an ihn zu senden.
Installieren Sie das NuGet-Paket direkt über die Paket-Manager-Konsole in Visual Studio oder mit der .NET Core CLI.
Visual Studio-Paket-Manager
Install-Package Microsoft.Azure.Devices.Client
dotnet add package Microsoft.Azure.Devices.Client
Codebeispiele
In diesem Beispiel wird eine Verbindung mit dem IoT Hub hergestellt und eine Nachricht pro Sekunde gesendet.
string deviceKey = "<deviceKey>";
string deviceId = "<deviceId>";
string iotHubHostName = "<IoTHubHostname>";
var deviceAuthentication = new DeviceAuthenticationWithRegistrySymmetricKey(deviceId, deviceKey);
DeviceClient deviceClient = DeviceClient.Create(iotHubHostName, deviceAuthentication, TransportType.Mqtt);
while (true)
{
double currentTemperature = 20 + Rand.NextDouble() * 15;
double currentHumidity = 60 + Rand.NextDouble() * 20;
var telemetryDataPoint = new
{
messageId = _messageId++,
deviceId = deviceId,
temperature = currentTemperature,
humidity = currentHumidity
};
string messageString = JsonConvert.SerializeObject(telemetryDataPoint);
Message message = new Message(Encoding.ASCII.GetBytes(messageString));
message.Properties.Add("temperatureAlert", (currentTemperature > 30) ? "true" : "false");
await deviceClient.SendEventAsync(message);
Console.WriteLine("{0} > Sending message: {1}", DateTime.Now, messageString);
await Task.Delay(1000);
}
Beispiele
Zeigen Sie die vollständige Liste von Azure IoT-Upsamples an.
Weitere Informationen finden Sie im Entwicklungsleitfaden für Azure IoT Hub.
Azure SDK for .NET