Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/azure/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Azure 物联网集线器消息处理器_Azure_Iot_Azure Iot Hub - Fatal编程技术网

Azure 物联网集线器消息处理器

Azure 物联网集线器消息处理器,azure,iot,azure-iot-hub,Azure,Iot,Azure Iot Hub,在处理Azure IoT中心中创建的邮件时遇到一些问题 获取以下eror:引发异常:“Microsoft.ServiceBus.dll中的Microsoft.ServiceBus.Messaging.Amqp.AmqpException”(“发生Amqp错误(条件='Amqp:link:redirect')) 谁能给我指出正确的方向吗 问候,, 乔纳斯 我在测试代码时没有遇到这个问题,因此它可能与其他方面有关。我发现重复的线程,建议检查块端口或代理设置,您可以尝试。我在测试代码时没有遇到这个问题

在处理Azure IoT中心中创建的邮件时遇到一些问题

获取以下eror:引发异常:“Microsoft.ServiceBus.dll中的Microsoft.ServiceBus.Messaging.Amqp.AmqpException”(“发生Amqp错误(条件='Amqp:link:redirect'))

谁能给我指出正确的方向吗

问候,, 乔纳斯


我在测试代码时没有遇到这个问题,因此它可能与其他方面有关。我发现重复的线程,建议检查块端口或代理设置,您可以尝试。

我在测试代码时没有遇到这个问题,因此它可能与其他内容有关。我发现重复的线程,建议检查块端口或代理设置,您可以尝试。

您的IoTubD2cendPoint的格式不正确。您可以在azure门户->消息->设备到云设置中找到兼容的端点


我发现这是一个非常有用的示例:

您的IoTubD2cendPoint的格式不正确。您可以在azure门户->消息->设备到云设置中找到兼容的端点


我发现这是一个非常有用的例子:

代码在我看来很好。我的是相同的,运作良好


您最好的选择是在Azure中创建一个新的物联网中心并替换字符串

代码在我看来很好。我的是相同的,运作良好


您最好的选择是在Azure中创建一个新的物联网中心并替换字符串

在构建连接字符串时,是否可以尝试在第12行中使用“Endpoint=”而不是“HostName=”

希望这有帮助


Mert

在构建连接字符串时,是否可以尝试在第12行中使用“Endpoint=”而不是“HostName=”

希望这有帮助

Mert有几点意见:

  • 请确保您使用的是最新版本的服务总线dll。i、 e.,3.1.7(截至今天)
  • 请不要在代码中混合使用异步和同步方法调用 如果您仍遇到此问题,请告知我们。

    几点意见:

  • 请确保您使用的是最新版本的服务总线dll。i、 e.,3.1.7(截至今天)
  • 请不要在代码中混合使用异步和同步方法调用
    如果您仍然遇到此问题,请告诉我们。

    有时我看到代理会过滤amqp数据包。将传输类型更改为http可能会解决这个问题。 现在我没有访问VisualStudio的权限,但我似乎记得可以在客户端属性下设置传输。
    如果您尝试它,您可以很容易地发现问题是在代理中还是在程序中。

    有时我会看到代理过滤amqp数据包。将传输类型更改为http可能会解决这个问题。 现在我没有访问VisualStudio的权限,但我似乎记得可以在客户端属性下设置传输。
    如果您尝试,您可以很容易地发现问题是在代理中还是在程序中。

    您是否应该使用与事件中心兼容的端点来使用EventHubClient?您好,您是否仍然存在此问题?您是否应该使用与事件中心兼容的端点来使用EventHubClient?您好,您仍然存在此问题?
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using Microsoft.ServiceBus.Messaging;
    
    namespace IOTHubMessageProcessor
    {
        class Program
        {
            static string connectionString = "HostName=yaddaaaa.azure-devices.net;SharedAccessKeyName=iothubowner;SharedAccessKey=keydataasdss+tacsCxwkWQeUm9sMCc2GHnQkIZHM=";
            static string iotHubD2cEndpoint = "messages/events";
            static EventHubClient eventHubClient;
            static void Main(string[] args)
            {
    
                Console.WriteLine("Receive messages\n");
                eventHubClient = EventHubClient.CreateFromConnectionString(connectionString, iotHubD2cEndpoint);
    
                var d2cPartitions = eventHubClient.GetRuntimeInformation().PartitionIds;
    
                foreach (string partition in d2cPartitions)
                {
                    ReceiveMessagesFromDeviceAsync(partition);
                }
                Console.ReadLine();
            }
    
    
            private async static Task ReceiveMessagesFromDeviceAsync(string partition)
            {
                var eventHubReceiver = eventHubClient.GetDefaultConsumerGroup().CreateReceiver(partition, DateTime.UtcNow);
    
                while (true)
                {
                    EventData eventData = await eventHubReceiver.ReceiveAsync();
                    if (eventData == null) continue;
    
                    string data = Encoding.UTF8.GetString(eventData.GetBytes());
                    Console.WriteLine(string.Format("Message received. Partition: {0} Data: '{1}'", partition, data));
                }
            }
        }
    }