public object DeserializeReply(Message message, object[] parameters)
        {
            JObject json = JsonRpcHelpers.DeserializeMessage(message);

            return(JsonConvert.DeserializeObject(
                       json[JsonRpcConstants.ResultKey].ToString(),
                       this.operation.Messages[1].Body.ReturnValue.Type));
        }
        public void DeserializeRequest(Message message, object[] parameters)
        {
            JObject json       = JsonRpcHelpers.DeserializeMessage(message);
            JArray  jsonParams = json[JsonRpcConstants.ParamsKey] as JArray;

            foreach (MessagePartDescription part in this.operation.Messages[0].Body.Parts)
            {
                int index = part.Index;
                if (jsonParams[index].Type != JTokenType.Null)
                {
                    parameters[index] = JsonConvert.DeserializeObject(
                        jsonParams[index].ToString(),
                        part.Type);
                }
            }
        }