Ejemplo n.º 1
0
        /// <inheritdoc />
        public VersionResult?GetVersion(HttpContext context, RouteData routeData)
        {
            if (context.Request.Query.TryGetValue(ParameterName, out var values))
            {
                var versionString = values.ToString();

                if (ParsingUtility.TryParseVersion(versionString, out var version))
                {
                    return(new VersionResult(version));
                }
            }

            return(null);
        }
        private static bool TryGetFacetVersion(StringSegment subType, out int version)
        {
            var facetSeparatorIndex = subType.IndexOf('.');

            if (facetSeparatorIndex >= 0)
            {
                var facets = subType.Split(DotSeparator).Reverse();

                foreach (var facet in facets)
                {
                    if (ParsingUtility.TryParseVersion(facet, out version))
                    {
                        return(true);
                    }
                }
            }

            version = 0;
            return(false);
        }