Пример #1
0
        /// <summary>
        /// Обработать импорт модели.
        /// </summary>
        /// <param name="path">Путь к папке с моделью.</param>
        /// <param name="serializer">Сериализатор XML.</param>
        /// <returns>Модель.</returns>
        protected RecordRefModel HandleImportModel(string path, XmlSerializer serializer)
        {
            var cardFileName = GetCardFileName(path);

            this.currentRecordRefModel = ImportModelFromFile(cardFileName, serializer);
            this.PrepareForImport(path, this.currentRecordRefModel);
            return(this.currentRecordRefModel);
        }
Пример #2
0
        /// <summary>
        /// Преобразовать модель компоненты к формату для импорта.
        /// </summary>
        /// <param name="path">Путь к папке с моделью.</param>
        /// <param name="model">Модель.</param>
        /// <returns>Выходной формат.</returns>
        protected virtual void PrepareForImport(string path, RecordRefModel model)
        {
            if (model.Requisites.Count > 0)
            {
                // Конвертировать реквизиты.
                foreach (var requisite in model.Requisites)
                {
                    requisite.PrepareForImport();
                }

                this.ImportRequisites(path, model.Requisites);
            }
        }
Пример #3
0
        /// <summary>
        /// Обработать экспорт модели.
        /// </summary>
        /// <param name="path">Путь к папке с моделью.</param>
        /// <param name="model">Модель компоненты.</param>
        /// <param name="settings">Настройки записи XML.</param>
        /// <param name="namespaces">Пространства имен сериализации.</param>
        /// <param name="serializer">Сериализатор модели.</param>
        protected virtual void HandleExportModel(string path, RecordRefModel model, XmlWriterSettings settings,
                                                 XmlSerializerNamespaces namespaces, XmlSerializer serializer)
        {
            this.currentRecordRefModel = model;
            var cardFilePath = GetCardFileName(path);

            this.outputFileNames.Clear();
            this.outputFolderNames.Clear();

            this.PrepareForExport(path, model);
            this.ExportModelToFile(model, cardFilePath, settings, namespaces, serializer);

            this.DeleteUnwantedFiles(path);
        }