|
using System;
using MDS;
using MDS.Client;
using MDS.Communication.Messages;
using StockCommonLib;
namespace StockApplication
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Press enter to query a stock status");
Console.ReadLine();
//Connect to DotNetMQ
var mdsClient = new MDSClient("StockClient");
mdsClient.MessageReceived += mdsClient_MessageReceived;
mdsClient.Connect();
//Create a stock request message
var stockQueryMessage = new StockQueryMessage { StockCode = "S01" };
//Create a MDS message
var requestMessage = mdsClient.CreateMessage();
requestMessage.DestinationApplicationName = "StockServer";
requestMessage.TransmitRule = MessageTransmitRules.NonPersistent;
requestMessage.MessageData = GeneralHelper.SerializeObject(stockQueryMessage);
//Send message and get response
var responseMessage = requestMessage.SendAndGetResponse();
//Get stock query result message from response message
var stockResult = (StockQueryResultMessage) GeneralHelper.DeserializeObject(responseMessage.MessageData);
//Write stock query result
Console.WriteLine("StockCode = " + stockResult.StockCode);
Console.WriteLine("ReservedStockCount = " + stockResult.ReservedStockCount);
Console.WriteLine("TotalStockCount = " + stockResult.TotalStockCount);
//Acknowledge received message
responseMessage.Acknowledge();
Console.ReadLine();
//Disconnect from DotNetMQ server.
mdsClient.Disconnect();
}
static void mdsClient_MessageReceived(object sender, MessageReceivedEventArgs e)
{
//Simply acknowledge other received messages
e.Message.Acknowledge();
}
}
}
|
By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.
If a file you wish to view isn't highlighted, and is a text file (not binary), please
let us know and we'll add colourisation support for it.
I have started programming at 14 years old using Pascal as hobby. Then I interested in web development (HTML, JavaScript, ASP...) before university.
I graduated from Sakarya University Computer Engineering. At university, I learned C++, Visual Basic.NET, C#, ASP.NET and Java. I partly implemented ARP, IP and TCP protocols in Java as my final term project.
Now, I am working on Windows and web based software development mostly using Microsoft technologies in my own company.
My open source projects:
* ABP Framework:
https://abp.io
* jTable:
http://jtable.org
* Others:
https://github.com/hikalkan
My personal web site:
https://halilibrahimkalkan.com