当前位置: 首页 > 知识库问答 >
问题:

从.NET内核获取消息并向mqseries服务器发送消息

毛越
2023-03-14

我想连接到包含此信息的mqseries服务器

        static MQQueueManager queueManager;
        static MQQueueManager qManager;
        static MQQueue queue;
        MQMessage queueMessage;
        MQGetMessageOptions queueGetMessageOptions;
        MQPutMessageOptions queuePutMessageOptions;
        static string QueueName;
        static void Main(string[] args)
        {
          Connect();
        }
         static void Connect()
        {
            var builder = new ConfigurationBuilder()
                .SetBasePath(Directory.GetCurrentDirectory())
                .AddJsonFile("AppSettings.json", true, true).Build();

            // Read the Mqseries "connection string" from App.config file.
            var queueManagerName = builder["queueManagerName"];
            var MQChannel = builder["MQChannel"];
            var  queueName = builder["QueueName"];
            string connectionName = builder["ConnectionName"];
            MQAccess(queueName, "Default", connectionName, MQChannel);
            Console.WriteLine("Connected to MQ Queue Manager");
        }
        public static void MQAccess(string queueName, string queueManager, string connection, string channel)
        {
            QueueName = queueName;

            qManager = new MQQueueManager(queueManager, channel, connection);

            queue = qManager.AccessQueue(QueueName, MQC.MQOO_INPUT_AS_Q_DEF + MQC.MQOO_FAIL_IF_QUIESCING);
        }

共有1个答案

封飞
2023-03-14

在MQV9.1.1中增加了.NET核心支持。正如@Jasone所说,您只需要使用MQ.NET托管模式

示例代码:

Hashtable properties;
MQQueueManager queueManager = null;
try {
    properties = new Hashtable();
    properties.Add(MQC.TRANSPORT_PROPERTY, MQC.TRANSPORT_MQSERIES_MANAGED);
    properties.Add(MQC.HOST_NAME_PROPERTY, hostName);
    properties.Add(MQC.PORT_PROPERTY, port);
    properties.Add(MQC.CHANNEL_PROPERTY, channelName);
    properties.Add(MQC.USER_ID_PROPERTY, userName);
    properties.Add(MQC.PASSWORD_PROPERTY, pwd);

    MQQueueManager queueManager = new MQQueueManager(queueManagerName, properties);

}catch(MQException mqex) {
 // Console out exception
}
 类似资料:
  • 问题内容: 我将实现类似于Facebook通知和此网站的内容(StackOverflow的通知会通知我们是否有人为我们的问题写评论/答案等)。请注意,用户将使用我的应用程序作为网站而不是移动应用程序。 我遇到以下获取结果的答案,但我需要推送结果而不是获取结果。 根据建议,我在实体类中创建了一个简单方法,并向其中添加了@PostPersist,但此方法不起作用,因此基于此答案,我添加了persist

  • 我有一个BE服务a,它正在使用假客户端向microservice B发送Rest JSON消息: 终点: Rest Endpoint正在向AWS Ses邮件或其他邮件提供商发送邮件。 问题是来自飞格的第一个呼叫可能需要5秒或更长时间。我需要使其异步,以便FE客户端不要等待邮件发送。 我如何可以使从飞度异步发出的Rest调用到超文本传输协议响应OK没有等待时间可以预期?是否有一些更好的解决方案来实现

  • 我正在编写自己的websocket服务器和客户端。我成功地处理了握手并建立了联系。 现在我正在编写send_message函数,它创建了一个合适的框架。下面的例子只是为了这个问题,它不是我最终打算写的,这只是我尝试给我相同的结果的许多方法中的一种。 输入:以上函数应发送 第一个字节 第一位设置为1-,表示这是消息的最后一帧 第二、第三和第四个-所有的零,对于这个例子来说是不相关的 以下四位-000

  • 我有一个简单的netty连接池和一个简单的HTTPendpoint来使用该池向ServerSocket发送TCP消息。相关代码看起来是这样的,客户端(NettyConnectionPoolClientApplication)是: 和服务器(ServerSocketRunner) 虚拟通道池处理程序和虚拟客户端处理程序只是打印出发生的事件,因此它们不相关。当服务器和客户端启动并且我向测试endpoi

  • 我尝试从http://developer.android.com/guide/google/gcm/gs.html我可以将regid发送到servlet,但无法从中获取消息。 Servlet: GCMinentService: 控制台: 我怎样才能解决这个问题?

  • 我有一个Netty客户端和一个Netty服务器,并按照主要教程后,为了有一个EchoClient/服务器,我想让它,使我的客户端发送消息到我的服务器,当他第一次连接到它。 下面是我的的方法,这些方法应该解决这个问题: 但是正如你所看到的,教程使用了一个ByteBuf和一个String似乎不起作用! 下面是我如何在我的方法中显示收到的消息: 但是当为使用并在构造函数中初始化它并发送它时,我的服务器不