private bool IsSatisfiedPath(string path)
        {
            var dummyAliasRecord = new AliasRecord {
                Path = path
            };

            return(_predicateCompiled(dummyAliasRecord));
        }
Beispiel #2
0
        private static Tuple <string, string, IDictionary <string, string>, string, int> ToDictionary(AliasRecord aliasRecord)
        {
            IDictionary <string, string> routeValues = new Dictionary <string, string>();

            if (aliasRecord.Action.Area != null)
            {
                routeValues.Add("area", aliasRecord.Action.Area);
            }
            if (aliasRecord.Action.Controller != null)
            {
                routeValues.Add("controller", aliasRecord.Action.Controller);
            }
            if (aliasRecord.Action.Action != null)
            {
                routeValues.Add("action", aliasRecord.Action.Action);
            }
            if (!string.IsNullOrEmpty(aliasRecord.RouteValues))
            {
                foreach (var attr in XElement.Parse(aliasRecord.RouteValues).Attributes())
                {
                    routeValues.Add(attr.Name.LocalName, attr.Value);
                }
            }
            return(Tuple.Create(aliasRecord.Path, aliasRecord.Action.Area, routeValues, aliasRecord.Source, aliasRecord.Id));
        }