本文整理汇总了C#中IProtocol.ProcessMessage方法的典型用法代码示例。如果您正苦于以下问题:C# IProtocol.ProcessMessage方法的具体用法?C# IProtocol.ProcessMessage怎么用?C# IProtocol.ProcessMessage使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类IProtocol
的用法示例。
在下文中一共展示了IProtocol.ProcessMessage方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: msgProc_MessageReceived
private void msgProc_MessageReceived(object sender, MessageEventArgs e)
{
if(_protocol == null)
_protocol = new ProtocolBase(this);
try
{
// not really optimal, better use a hashtable here - with integer keys
switch (e.Message.GetType().Name)
{
case "TestRequest":
var testRequest = (TestRequest)e.Message;
_msgProc.Send(new TestResponse { Message = "Well hello to you too!", Number = testRequest.Number });
break;
case "ProtocolVersionResponse":
var protocolVersion = (ProtocolVersionResponse)e.Message;
// todo: use factory pattern here to get the proper protocol version
_protocol = new ProtocolBase(this);
_msgProc.Send(new ACKResponse(protocolVersion.Id));
break;
default:
// if it's not handled by the session, pass it to the Protocol
_protocol.ProcessMessage(e.Message);
break;
}
}
catch (Exception ex)
{
Debug.WriteLine(ex.Message);
}
}