Developing XMS .NET applications

IBM® Message Service Client for .NET (XMS .NET) provides an application programming interface (API) called XMS that has the same set of interfaces as the Java Message Service (JMS) API. IBM Message Service Client for .NET contains a fully managed implementation of XMS, which can be used by any .NET compliant language.

About this task

XMS supports:
  • Point-to-point messaging
  • Publish/subscribe messaging
  • Synchronous message delivery
  • Asynchronous message delivery
An XMS application can exchange messages with the following types of application:
  • An XMS application
  • An IBM MQ classes for JMS application
  • A native IBM MQ application
  • A JMS application that is using the IBM MQ default messaging provider
An XMS application can connect to, and use the resources of, any of the following messaging servers:
IBM MQ queue manager
The application can connect in either bindings or client mode.
WebSphere® Application Server service integration bus
The application can use a direct TCP/IP connection, or it can use HTTP over TCP/IP.
IBM Integration Bus
Messages are transported between the application and the broker using WebSphere MQ Real-Time Transport. Messages can be delivered to the application using WebSphere MQ Multicast Transport.

By connecting to an IBM MQ queue manager, an XMS application can use WebSphere MQ Enterprise Transport to communicate with IBM Integration Bus. Alternatively, an XMS application can publish and subscribe by connecting to IBM MQ.

[V9.1.1 Nov 2018]From IBM MQ 9.1.1, IBM MQ supports .NET Core for applications in Windows environments. For more information, see Installing IBM MQ classes for XMS .NET Standard.

[V9.1.2 Mar 2019]From IBM MQ 9.1.2, IBM MQ supports .NET Core for applications in Linux® environments.

[V9.1.4 Dec 2019]From IBM MQ 9.1.4, XMS .NET managed applications are able to automatically balance connections across clustered queue managers. Both the .NET Framework and .NET Standard libraries are supported. For more information, see Uniform clusters and Automatic application balancing.