/// <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;
                }
            }
        }