// ReSharper disable once UnusedMember.Local public async Task <HandleResult> HandleMessage(string rawMessage) { var messageHandler = (IMessageHandler <TMessage>)_resolver.Get(_messageHandlerType); var message = _messageParser.DeserializeMessage <TMessage>(rawMessage); var result = await messageHandler.Handle(message); return(new HandleResult(message, result)); }