欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Azure IOT Device 驱动代码-C#语言开发

程序员文章站 2022-06-28 19:22:19
//Copy Rights 2020 Jacky Zong ; Version 5.1.1// All rights reservedusing Microsoft.Azure.Devices.Client;using System;using System.Text;using System.Threading;using System.Threading.Tasks;namespace TlsProtocolTests{ internal static class De......

//Copy  Rights  2020 Jacky Zong ; Version 5.1.1
// All  rights  reserved
using Microsoft.Azure.Devices.Client;
using System;
using System.Text;
using System.Threading;
using System.Threading.Tasks;

namespace TlsProtocolTests
{
internal static class DeviceClientTests
{
public static async Task RunTest(string deviceCs)
{
Console.WriteLine("Starting device client tests.");

int i = 0;
int successes = 0;
int failures = 0;
const string messageFormat = "{{ \"deviceClientTestNumber\": {0}, \"transportType\": \"{1}\" }}";

foreach (TransportType transportType in Enum.GetValues(typeof(TransportType)))
{
using (var deviceClient = DeviceClient.CreateFromConnectionString(deviceCs, transportType))
{
try
{
string messageBody = string.Format(messageFormat, ++i, transportType.ToString());

Console.WriteLine($"Sending: {messageBody}");


{
await deviceClient
.SendEventAsync(
new Message(Encoding.UTF8.GetBytes(messageBody))
{
ContentType = "application/json",
ContentEncoding = "UTF-8",
},
cts.Token)
.ConfigureAwait(false);
}

Console.WriteLine("Succeeded.\n");
successes++;
}
catch (Exception ex)
{

Exception next = ex;
do
{
reason.AppendFormat($" - {next.GetType()}: {next.Message}\n");
next = next.InnerException;
}
while (next != null);
Console.WriteLine($"Failed for {transportType} due to:\n{reason}");
failures++;
}
}
}

Console.WriteLine($"DeviceClient tests finished with {successes} successes and {failures} failures.");
}
}
}

本文地址:https://blog.csdn.net/weixin_45806384/article/details/107892221