Subscribe to Topic for Messages
In order to utilize messaging APIs, include the following namespaces in your application:
Alachisoft.NCache.Web.Caching
Alachisoft.NCache.Runtime.Caching
The following code sample does the following:
- Initialize dedicated Pub/Sub cache.
- Get existing topic of interest –
orderTopic
. - Create subscription for each topic.
- Register events for subscribers to receive messages once published to the topic.
- Unsubscribe subscribers registered to
orderTopic
.
public void Subscribe()
{
string cacheName = "pubSubCache";
string topicName = "orderTopic";
Cache cache = NCache.InitializeCache(cacheName);
//Get Order topic
ITopic orderTopic = cache.MessagingService.GetTopic(topicName);
//Register subscribers for Order topic
ITopicSubscription ordSubscriber1 = orderTopic.CreateSubscription(MessageReceived);
ITopicSubscription ordSubscriber2 = orderTopic.CreateSubscription(MessageReceived);
//Unsubscribe Order subscribers
ordSubscriber1.UnSubscribe();
ordSubscriber2.UnSubscribe();
}
private void MessageReceived(object sender, MessageEventArgs args)
{
//perform operations
if(args.Message.Payload is Order ord)
{
//perform operations
}
}