Как настроить сгенерированный исходный код с помощью Altova Mapforce Project

Справочная информация. Когда я генерирую код для своего проекта сопоставления, запускается только одна карта, независимо от того, какой тип файла я отправляю в команду.

Я хотел бы изменить генерацию кода проекта, чтобы при создании карт applicationConsole.cs допускал несколько файлов и типов файлов и выбирал соответствующую карту на основе параметров, которые я отправляю.

до сих пор мой проект содержит 4 карты, каждая из которых отличается и имеет параметр, указывающий, следует ли запускать карту. Как только код сгенерирован, applicationConsole.cs не различается при запуске карт. первая карта, перечисленная в applicationConsole.cs, запущена, а остальные нет. если первая карта соответствует заданным параметрам, вывод верен, но если следующий входящий файл не совпадает, консоль закрывается, а не переходит к следующей карте.

Я пытаюсь избежать прямых манипуляций с applicationConsole.cs из-за частой генерации кода.

вопрос: кто-нибудь знает, как изменить выходные данные генерации кода Mapforce Project, чтобы добавить переключатель для типа карты в зависимости от типа файла?

2 ответа

В каталоге установки приложений altova mapforce есть один каталог SPL. это автоматически генерировать код в соответствии с выбранным вами языком.

Возьмите резервную копию этого каталога и измените код каталога SPL в соответствии с вашими требованиями. Вам нужно выучить SPL (Spy Programming Language).

http://manual.altova.com/Mapforce/mapforce-enterprise/index.html?cgthewaytospl(spyprogrammingla.htm

Если вам нужно что-то еще, пожалуйста, сообщите мне здесь. У меня есть хорошая команда по настройке SPL.

Спасибо

Взгляните на рефакторинг под Java и C#

Действительно, когда вы смотрите на сгенерированный код заглушки и вам нужно объединить пару карт, первой задачей рефакторинга является переименование пространства имен, Altova использует его пространство имен по умолчанию, поэтому пространство имен mapa будет полезным для пространства имен mapb и т. Д.

Я приведу примеры C# http://msdn.microsoft.com/en-us/library/vstudio/6kxxabwd.aspx

Затем у вас есть консольное приложение, поэтому вы хотите скопировать applicationConsole.cs и переименовать его в свое имя проекта или имя класса, а затем извлечь метод

http://msdn.microsoft.com/en-us/library/vstudio/0s21cwxk.aspx

Наконец, вы захотите извлечь интерфейс, чтобы вернуть конструктор исключений http://msdn.microsoft.com/en-us/library/vstudio/fb3dyx26.aspx и: http://msdn.microsoft.com/en-us/library/tz6bzkbf.aspx

То, что у вас будет, - это проект с вашим запуском, представляющий собой исходный файл applicationConsole.cs, который вы скопировали и переименовали в папке проекта или решения. Когда вы обновите карту, вы сможете переписать код в этой папке тем, что сгенерировал Mapforce.

Этот файл был сгенерирован MapForce 2013r2sp2. ВЫ НЕ ДОЛЖНЫ МОДИФИЦИРОВАТЬ ДАННЫЙ ФАЙЛ, ПОТОМУ ЧТО ЭТО БУДЕТ ПЕРЕЗАПИСАНО, КОГДА ВЫ ПЕРЕЗАПУСКАЕТЕ КОДОВАНИЕ. Обратитесь к документации MapForce для получения дополнительной информации.

Это то, что вы увидите в этом файле, используйте технику, описанную выше, и инструмент очень прост в использовании. Если вы программист для настольных компьютеров, рефакторинг может быть новым, но он сэкономит много времени и усилий в будущем и сделает продукт завершенным.

Другие вопросы по тегам