protected void OnOperationRequest(object sender, MessageReceivedEventArgs e) { var peer = ConnectionCollection.GetPeers <IClientPeer>().FirstOrDefault(c => c.Client == e.Client); subServerHandlerList.Peer = peer; Console.WriteLine("Handling operation request"); using (var message = e.GetMessage()) { using (var reader = message.GetReader()) { var parameters = MessageSerializerService.DeserializeObjectOfType <Dictionary <byte, object> >(reader.ReadString()); subServerHandlerList.HandleMessage(new Request((byte)e.Tag, parameters.ContainsKey(SubCodeParameterCode) ? (int?)Convert.ToInt32(parameters[SubCodeParameterCode]) : null, parameters), this); } } }