/// <summary> /// Create iot hub /// </summary> /// <param name="manager"></param> /// <param name="resourceGroup"></param> /// <param name="name"></param> /// <param name="properties"></param> /// <param name="rule"></param> /// <param name="logger"></param> public IoTHubResource(IoTHubFactory manager, IResourceGroupResource resourceGroup, string name, IotHubProperties properties, ILogger logger, SharedAccessSignatureAuthorizationRule rule) { _resourceGroup = resourceGroup; Name = name; _manager = manager; _properties = properties; _logger = logger; PrimaryConnectionString = ConnectionString.CreateServiceConnectionString( properties.HostName, rule.KeyName, rule.PrimaryKey).ToString(); SecondaryConnectionString = ConnectionString.CreateServiceConnectionString( properties.HostName, rule.KeyName, rule.SecondaryKey).ToString(); if (properties.EventHubEndpoints.TryGetValue("events", out var evtHub)) { EventHubConnectionString = ConnectionString.CreateEventHubConnectionString( evtHub.Endpoint, rule.KeyName, rule.PrimaryKey).ToString(); } }