Не найдено допустимой комбинации сведений об учетной записи

#c# #azure #azureservicebus

#c# #azure #azureservicebus

Вопрос:

Вот сценарий, который я выполняю. У меня есть функциональное приложение, в котором я указал строку подключения к Azure service bus, и я пытаюсь вызвать эту строку подключения. Каждый раз, когда я вызываю это, оно выдает мне эту ошибку «Не найдено допустимой комбинации сведений об учетной записи». Что это может быть, почему оно выдает эту ошибку?

    CloudQueueClient queueClient = null;
    string serviceBus = "Endpoint=sb://xyzservicebus.servicebus.windows.net/;SharedAccessKeyName=RootManageSharedAccessKey;SharedAccessKey=xxxxxx";
    string serviceQueue = "Endpoint=sb://xyzservicebus.servicebus.windows.net/;SharedAccessKeyName=processqueuepolicy;SharedAccessKey=xxxxxx=;EntityPath=processqueue";
    serviceBus = serviceQueue;
    // CloudStorageAccount storageAccount = null;
    CloudStorageAccount storageAccount = CloudStorageAccount.Parse(serviceBus);
    if (CloudStorageAccount.TryParse(serviceBus, out storageAccount)) {
        queueClient = storageAccount.CreateCloudQueueClient();
        storageAccountQueue = queueClient.GetQueueReference("processqueue");
        await storageAccountQueue.AddMessageAsync(new CloudQueueMessage(message));
    }
  

Ответ №1:

Вы используете неправильную библиотеку! Вы пытаетесь подключиться к своей учетной записи Azure Service Bus с помощью клиентской библиотеки хранилища.

Пожалуйста, используйте пакет nuget служебной шины Azure вместо пакета Storage.

Комментарии:

1. Вы имеете в виду эту? Хранилище.Net.Microsoft. Azure. ServiceBus от Ivan Gavryliuk. был бы весьма признателен, если бы вы могли поделиться фрагментом кода.

2. Нет. Это неправильный пакет. Пожалуйста, используйте nuget.org/packages/Microsoft . Azure. ServiceBus или nuget.org/packages/WindowsAzure . ServiceBus . Что касается примера кода, пожалуйста, найдите Azure Service Bus c #, и вы найдете много информации.

3. Спасибо. Я испытывал то же самое, и это решает проблему для меня.