public override WildcardRouteItem GetWildcardRouteForLinkProvider(Item item, SiteContext site) { Assert.ArgumentNotNull(item, "item"); string cacheKey = $"cache{item.TemplateID}_{item.Language.Name}_{site.Name}"; if (LinkProviderRoutesCache.ContainsKey(cacheKey)) { return(LinkProviderRoutesCache[cacheKey]); } WildcardRouteItem route = Routes?.FirstOrDefault(x => x.ItemTemplates.Contains(new TemplateID(item.TemplateID))); if (route == null) { return(null); } LinkProviderRoutesCache.TryAdd(cacheKey, route); return(route); }
public override WildcardRouteItem GetWildcardRouteForItemResolver(Item item, SiteContext site) { Assert.ArgumentNotNull(item, "item"); string cacheKey = $"cache{item.ID}_{item.Language.Name}_{site.Name}"; if (ItemResolverRoutesCache.ContainsKey(cacheKey)) { return(ItemResolverRoutesCache[cacheKey]); } WildcardRouteItem route = Routes?.FirstOrDefault(x => x.WildcardItemIds.Contains(item.ID)); if (route == null) { return(null); } ItemResolverRoutesCache.TryAdd(cacheKey, route); return(route); }