장치 알림 논리를 처리하는 Azure 웹 응용 프로그램의 컨트롤러 코드입니다. 내가하고있는 일은 ASP MVC 컨트롤러에서 아래 표시된 코드를 호출하는 것입니다. 하지만 실행하면 브라우저에서 계속 보류중인 요청을받습니다 (중단됩니다). 버튼을 클릭하면 컨트롤러에서 웨이크 업 메서드가 호출됩니다.MVC 웹 응용 프로그램에서 Azure IoT 허브 장치로 보낼 때 응용 프로그램이 중단됩니다.
콘솔 응용 프로그램의 코드는 MSDN의 코드와 다르지 않습니다. 내가 뭘 놓치고 있니?
using System.Text;
using Microsoft.Azure.Devices;
public class MyTemplate2Controller : Controller
{
static ServiceClient serviceClient;
static string connectionString = "HostName=azure-devices.net;SharedAccessKeyName=iothub;SharedAccessKey=mrUPt*2318C18K3LUk+oFarkNQ4vRvHrOa/eg=";
private AsyncController Task SendCloudToDeviceMessageAsync()
{
var asd = "{13A20041677B0,4,15,0}";
var commandMessage = new Message(Encoding.ASCII.GetBytes(asd));
return await serviceClient.SendAsync("Test_Comp_Dev_1", commandMessage).ConfigureAwait(continueOnCapturedContext: false);
}
public void Wakeup()
{
serviceClient = ServiceClient.CreateFromConnectionString(connectionString);
SendCloudToDeviceMessageAsync().Wait();
}
이 질문은 너무 일반적입니다, 당신이 시도하고 코드가 실패하는 곳을 정확하게 볼 수있는 원격 디버깅 세션을 권장합니다. https://docs.microsoft.com/en-us/visualstudio/debugger/remote-debugging-azure –