Имя типа или пространства имен «ServiceBus» не существует в пространстве имен «Microsoft».

Я пытаюсь создать консольное приложение С#, которое добавляет сообщения в очередь. Я следую приведенным здесь примерам служебной шины Azure: http://www.windowsazure.com/en-us/develop/net/how-to-guides/service-bus-queues/

Моя программа ничего не делает в данный момент:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Microsoft.ServiceBus;
using Microsoft.ServiceBus.Messaging;

namespace testConsole
{
    class Program
    {
        static void Main(string[] args)
        {
        }
    }
}

Проблема, с которой я столкнулся, заключается в том, что когда я добавляю ссылку на Microsoft.ServiceBus.dll (как объяснено в приведенной выше ссылке, 1-добавить ссылку на dll и 2-добавить операторы использования), я получаю сообщение об ошибке при компиляции: "Тип или имя пространства имен «ServiceBus» не существует в пространстве имен «Microsoft» (вам не хватает ссылки на сборку?)"

Я даже просмотрел Microsoft.ServiceBus.dll с помощью инструмента Reflector, и он действительно содержит пространство имен Microsoft.ServiceBus. Номер версии dll — 1.6.0.0, а версия среды выполнения — v4.0.30319.

Любая помощь приветствуется.

-пом-


person Pompair    schedule 19.12.2011    source источник
comment
Ха! Я только что нашел ответ сам. В настройках консольного проекта целевая платформа должна указывать на .NET Framework 4 вместо клиентского профиля .NET Framework 4. Ошибок ссылок больше нет... Счастливого Рождества всем!   -  person Pompair    schedule 19.12.2011


Ответы (2)


Распространенной проблемой при использовании служб Storage и AppFabric с приложениями, не являющимися веб-приложениями, является то, что целевой платформой по умолчанию для приложения Windows Forms и консольного приложения является клиентский профиль .NET Framework 4.0. Измените Target Framework вашего проекта на «.NET Framework 4.0» (полный), и он будет работать.

person astaykov    schedule 19.12.2011
comment
Думаю, мы нашли ответ одновременно... =) В любом случае спасибо! Я приму этот ответ (после 8-минутного ограничения) - person Pompair; 19.12.2011
comment
Я удивлен, что это проблема с 2011 года, и мой MSFT еще не исправлен. Но как видим, Client Profile для .NET Framework 4.5 и 4.5.1 отсутствует :) - person astaykov; 25.06.2014

Проблема, с которой я столкнулся, заключалась в том, что есть два пакета Microsoft.Azure.ServiceBus и Azure.Messaging.ServiceBus. и я использовал не тот, так что, возможно, это было.

В ссылке пакет использует Azure, а не Microsoft, поскольку вы импортируете его в свой проект.

Это тот, который использует Azure.Messaging.ServiceBus;

person Luis Sánchez    schedule 07.05.2021