Однако проблема в том, что я не могу подключиться к служебной шине из функции, хотя я проверил, что предоставленная строка подключения та же самая. Он не может ни потреблять, ни записывать в очередь и зависает на неопределенный срок.
Код: Выделить всё
string? connectionString = Environment.GetEnvironmentVariable( "SERVICE_BUS_CONNECTION_STRING");
await using var client = new ServiceBusClient(connectionString);
string queueName = "tasksQueue";
ServiceBusSender sender = client.CreateSender(queueName);
ServiceBusMessage message = new ServiceBusMessage("Health check message");
await sender.SendMessageAsync(message);
Несколько проверок, которые я сделал:
- Строка подключения присутствует во время выполнения в отладчике, и эта же строка работает для API-сервера со служебной шиной.
- Строка подключения передается Aspire и
И я приложил фотографию страницы ресурсов Aspire, и все, кажется, работает без каких-либо ошибок.Код: Выделить всё
Endpoint=sb://localhost:34628;SharedAccessKeyName=RootManageSharedAccessKey;SharedAccessKey=SAS_KEY_VALUE;UseDevelopmentEmulator=true; - Очередь с именем TaskQueue уже существует в служебной шине.

I не смог найти никакого решения этой проблемы в Интернете, и я застрял на некоторое время, поэтому я ценю любую помощь. Возможно, какой-то брандмауэр блокирует доступ, но все это работает локально, поэтому я не смог найти ничего, что могло бы его заблокировать.