protected virtual IDictionary <string, string> DeserializeStringDictionary(string inputText)
        {
            var stringDictionaryParser = new MvxStringDictionaryParser();
            var dictionary             = stringDictionaryParser.Parse(inputText);

            return(dictionary);
        }
        protected virtual MvxViewModelRequest DeserializeViewModelRequest(string inputText)
        {
            var stringDictionaryParser = new MvxStringDictionaryParser();
            var dictionary             = stringDictionaryParser.Parse(inputText);
            var toReturn          = new MvxViewModelRequest();
            var viewModelTypeName = SafeGetValue(dictionary, "Type");

            toReturn.ViewModelType = DeserializeViewModelType(viewModelTypeName);
            toReturn.RequestedBy   = new MvxRequestedBy
            {
                Type           = (MvxRequestedByType)int.Parse(SafeGetValue(dictionary, "By")),
                AdditionalInfo = SafeGetValue(dictionary, "Info")
            };
            toReturn.ParameterValues    = stringDictionaryParser.Parse(SafeGetValue(dictionary, "Params"));
            toReturn.PresentationValues = stringDictionaryParser.Parse(SafeGetValue(dictionary, "Pres"));
            return(toReturn);
        }