ServiceStack.RestRoute.GetQueryString C# (CSharp) Method

GetQueryString() static private method

static private GetQueryString ( object request, RouteMember>.IDictionary propertyMap ) : string
request object
propertyMap RouteMember>.IDictionary
return string
        internal static string GetQueryString(object request, IDictionary<string, RouteMember> propertyMap)
        {
            var result = StringBuilderCache.Allocate();

            foreach (var queryProperty in propertyMap)
            {
                if (queryProperty.Value.IgnoreInQueryString)
                    continue;

                var value = queryProperty.Value.GetValue(request, true);
                if (value == null)
                    continue;

                var qsName = Text.JsConfig.EmitLowercaseUnderscoreNames
                    ? queryProperty.Key.ToLowercaseUnderscore()
                    : queryProperty.Key;

                result.Append(qsName)
                    .Append('=')
                    .Append(FormatQueryParameterValue(value))
                    .Append('&');
            }

            if (result.Length > 0) result.Length -= 1;
            return StringBuilderCache.ReturnAndFree(result);
        }

Usage Example

Exemplo n.º 1
0
        public static string ToReplyUrl(this object requestDto, string format = "json")
        {
            var requestType     = requestDto.GetType();
            var predefinedRoute = "/{0}/reply/{1}".Fmt(format, requestType.GetOperationName());
            var queryProperties = RestRoute.GetQueryProperties(requestDto.GetType());

            predefinedRoute += "?" + RestRoute.GetQueryString(requestDto, queryProperties);

            return(predefinedRoute);
        }
All Usage Examples Of ServiceStack.RestRoute::GetQueryString