/// <summary>
        /// В данном методе происходит создание объектной модели, создание на ее основе документации и ее сохранение.
        /// </summary>
        public void CreateAndSave()
        {
            var template = new MarkdownTemplate(_generateMode);
            var xml      = new XmlController(_generateMode);

            template.CreateTemplate();
            var elements = xml
                           .GetElements(CreateRelationsFromTypesHash().ToList());

            CreateFileNumbers(elements);
            var namespaces = new NamepacesIndexPageModel {
                NamespacesList = new List <MarkdownTemplateModel>()
            };

            foreach (var model in elements /*.OrderBy(model => model.RelativeKey)*/.ToList())
            {
                if (!model.IsTargetType)
                {
                    continue;
                }
                if (model.RelativeKey != template.CurrentRelativeKey)
                {
                    Write(template.CurrentRelativeKey);
                    template.CurrentRelativeKey = model.RelativeKey;
                    template.CreateTemplate();
                    Write(template.CurrentRelativeKey);
                }
                model.MdKey = _generateMode.MdKey;
                Save(template.CreateMdText(model), $"{_generateMode.OutPath}{model.FilePath}");
                Write(model.FullName + $" {model.RelativeKey}");
                if (model.TypeForm == "Пространство имен")
                {
                    namespaces.NamespacesList.Add(model);
                }
            }
            Save(template.CreateMdIndexPage(namespaces), $"{_generateMode.OutPath}Index.md");
        }
 public string CreateMdIndexPage(NamepacesIndexPageModel model) => _compiledIndexTemplate(model);