我是新手 现在,我通过本教程尝试使用ASp.net核心在Azure物联网中心中获取一些知识:https://ztirom.at/2016/03/frist-steps-azure-iot-hub/ 但是当我遇到一些错误
出了什么问题? 我该如何解决它或从物联网中心获取数据的另一种方法。 谢谢大家
答案 0 :(得分:0)
我遵循this tutorial创建一个ASP.NET Core MVC应用程序。从NuGet安装Microsoft.Azure.Devices(版本1.17.0)。在控制器中调用regManager.GetDevicesAsync()并成功获取结果。
控制器中的ManageDevices.cs:
using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Mvc;
using Microsoft.Azure.Devices;
using Microsoft.Azure.Devices.Common.Exceptions;
// For more information on enabling MVC for empty projects, visit https://go.microsoft.com/fwlink/?LinkID=397860
namespace WebApplication1.Controllers
{
public class ManageDevices : Controller
{
public static string IOTHUBSTRING = "HostName=[IOT HUB NAME].azure-devices.net;SharedAccessKeyName=iothubowner;SharedAccessKey=[KEY]";
// GET: /<controller>/
public string Index()
{
return "This is my default action...";
}
public IActionResult GetDevices()
{
GetDevicesAsync();
return View();
}
public async static Task<IEnumerable> GetDevicesAsync(int deviceCount = 8)
{
var regManager = RegistryManager.CreateFromConnectionString(IOTHUBSTRING);
var devices = await regManager.GetDevicesAsync(deviceCount);
foreach (var device in devices)
{
string deviceId = device.Id;
DeviceStatus status = device.Status;
}
return devices;
}
}
}
您可以使用以下URI执行GetDevices方法:
https://localhost:44387/ManageDevices/GetDevices
获得设备的结果:
您可以尝试一下是否有帮助。
更新:
您可以访问以下设备数据: