2010-12-13 4 views
1

Я пытаюсь получить некоторую информацию/данные из (IBM) Websphere MQ с помощью C#.
Мне удалось получить сообщение, но я не могу понять, как получить информацию о очереди (например, есть ли какие-либо элементы, сколько элементов содержится и т. Д.).
Не уверен, если это имеет значение, но я использую MQ 6.1 - онлайн-API для C#, предоставляемый IBM, довольно пуст.WebSphere - Статус MQ

Любые предложения приветствуются.

ответ

3

Необходимая информация доступна как queue object properties. Некоторые свойства настраиваются, все они получают. Приложение должно запрашивать и/или устанавливать права на очередь, чтобы они работали.

Ссылка, предоставленная вами в комментарии к отзыву Стивена, относится к другому разделу руководства WMQ .Net. Я подозреваю, что вы просматриваете его с завитом или иначе отключили скрипт, иначе вы бы легко нашли раздел, который я связал с ним на панели навигации. Любая страница, загруженная в подходящий браузер, перезагрузится внутри рамки навигации и отобразит оглавление слева. Оглавление будет размещено на открытой странице. Раздел, на который вы ссылались, состоял в компиляции приложения .Net, но в другом месте есть полная ссылка на API.

Я бы рекомендовал просмотреть Infocenter в браузере с поддержкой Javascript с помощью куки-файлов или установить локальную версию Infocenter в качестве инструментального средства Eclipse. Локальная версия имеет возможность отключать обновления при обновлении онлайн-руководств. В любом случае предоставляется панель навигации, которая включает полный набор руководств по WMQ и доступна для поиска по всем им, по отдельной книге или по разделам внутри книги.

Целевая страница для документации WMQ is here. Эта страница содержит ссылки на онлайн-инфоцентры для v6 и v7, загружаемые Infocenters для v6 & v7 и версии PDF старой документации.

EDIT - Сверло вниз путь к определениям констант

  • От читателей страницы МКК направляются к Application Programming Reference manual, а не непосредственно на документы МКК. Однако отображаемая страница не отражает весь контент APRM! Нажмите знак «плюс» в рамке навигации, чтобы открыть TOC для книги.
  • На странице Constants нет контента, кроме как направить читателя в руководство Constants. К сожалению, это не связано, но руководство указано в рамке навигации просто как «Constants». Нажмите знак «плюс», чтобы развернуть TOC.
  • Этот уровень содержит основные разделы книги, одним из которых является детальность всех констант под заголовком «Constants».При нажатии этой ссылки открывается индексная страница со всеми перечисленными константами и ссылки на выделенную страницу для каждого.
+0

Я использую совершенно современный браузер, я хочу сказать, что документация MQC отсутствует для .NET! Ваша ссылка ведет к документации Q, но я хочу MQC Struct/Enum;) – Jaster

+0

ОК, я обновил ответ с помощью пути через кадр навигации к константам. Частью проблемы является то, что они связаны с верхней страницей APRM, которая, как вы говорите, совершенно пуста. Но сверление в этом ручном TOC показывает страницу для констант ... которая ссылается на другое автономное руководство со всеми константами. Это круговой путь и нелегко следовать, но в руководстве V7 он значительно улучшен. Поскольку V6 End-of-Life - сентябрь 2011 года, я предполагаю, что структура руководств v6 не будет пересмотрена, чтобы решить эту проблему. –

+2

BTW - Я связался с «Q», потому что в вашем вопросе говорится: «Я не могу понять, как получить информацию о очереди», и вообще не упоминает MQC. Если бы я понял, что стоил бы мне нисходящего потока, я бы предоставил ссылки прямо на константы! :-) –

0

В прошлом я использовал XMS: IBM Message Service Client для .NET. Текущую версию можно найти по адресу: IBM Message Service Client. Вы также можете найти краткое руководство по C# Corner

В общем, вы хотите, чтобы следовать схеме:

MQCONN 
MQOPEN the queue 
loop 
    MQGET from the queue 
    Process the message 
end loop 

Убедитесь, что вы указываете MQGMO_WAIT на вызов MQGet. Вы не хотите просто опросить очередь.

Постараюсь найти исходный код, когда попаду в офис.

+0

Я далеко за пределами быстрого начала, мне нужно получить информацию о q. Я получил api от IBM, но не документирован. Особенно отсутствует описание MQC -> http://publib.boulder.ibm.com/infocenter/wmqv6/v6r0/index.jsp?topic=/com.ibm.mq.csqzav.doc/un10670_.htm. Ссылки ниже приводят к довольно пустой странице ... – Jaster

+0

По-прежнему не повезло найти мой код - питание отключено, поэтому нет доступа TFS. Этот redbook старый: http://www.redbooks.ibm.com/abstracts/sg247012.html, но это то, что я использовал. Я, кажется, помню, что мне пришлось спуститься к c api и использовать interop, чтобы заставить его работать на 6.1. –