private void _clientSocket_OnMessage(object sender, MessageEventArgs e) { Debug.WriteLine(e.Data); WebSocketMessage message; using (StringReader stringReader = new StringReader(e.Data)) using (JsonTextReader jsonReader = new JsonTextReader(stringReader)) { message = _serializer.Deserialize <WebSocketMessage>(jsonReader); } switch (message.MessageType) { case WebSocketMessage.WebSocketMessageType.EventNotification: EventNotification?.Invoke(this, new WebSocketMessageEventArgs(message)); break; case WebSocketMessage.WebSocketMessageType.ObjectDisposed: _referenceResolver.RemoveReference(message.DtoGuid); break; default: _receivedMessages[message.MessageGuid] = message; _messageHandler.Set(); break; } }
private void _clientSocket_OnMessage(object sender, MessageEventArgs e) { WebSocketMessage message = new WebSocketMessage(e.RawData); var proxy = _referenceResolver.ResolveReference(message.DtoGuid) as ProxyBase; switch (message.MessageType) { case WebSocketMessage.WebSocketMessageType.EventNotification: proxy?.OnEventNotificationMessage(message); break; case WebSocketMessage.WebSocketMessageType.ObjectDisposed: _referenceResolver.RemoveReference(message.DtoGuid); proxy?.Dispose(); break; default: _receivedMessages[message.MessageGuid] = message; _messageHandler.Set(); break; } }