Я получил ошибку в ASP.net ядре MVC и Azure iot hub - PullRequest
0 голосов
/ 27 августа 2018

Я новичок Теперь я пытаюсь использовать ядро ​​ASp.net, чтобы получить некоторые сведения в Azure iot hub с этим учебным пособием: https://ztirom.at/2016/03/frist-steps-azure-iot-hub/, но когда я получаю какую-то ошибку

enter image description here

Что не так случилось?как я могу это исправить или другой способ получить некоторые данные из iot hub.спасибо всем

это моя часть iothubconnectionstring

1 Ответ

0 голосов
/ 30 августа 2018

Я следую этому руководству , чтобы создать приложение ASP.NET Core MVC.Установите Microsoft.Azure.Devices (версия 1.17.0) из NuGet.Вызовите 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;
        }
    }
}

Для выполнения метода GetDevices можно использовать следующий URI:

https://localhost:44387/ManageDevices/GetDevices

enter image description here

Результат полученных устройств:

enter image description here

Вы можете попробовать посмотреть, поможет ли это.

Обновление:

Вы можете получить доступ к следующим данным устройства:

enter image description here

...