/// <summary> /// Фабрика ключей навигации. /// </summary> /// <param name="factory">Фабрика.</param> public void AddNavigationKeyFactory(INavigationKeyFactory factory) { if (factory == null) { return; } foreach (var k in factory.TypeNames) { factoryByType[k] = factory; } }
/// <summary> /// Конструктор. /// </summary> /// <param name="services">Сервисы.</param> public NavigationKeyService(IServiceProvider services) : base(services) { var factories = new INavigationKeyFactory[] { new BoardLinkNavigationFactory(), }; factoryByType = new Dictionary<string, INavigationKeyFactory>(StringComparer.OrdinalIgnoreCase); foreach (var f in factories) { foreach (var k in f.TypeNames) { factoryByType[k] = f; } } }