Карта BizTalk не вызывает конструктор по умолчанию вспомогательного класса, используемого скриптом functoid в начале преобразования - PullRequest
2 голосов
/ 20 декабря 2011

Я использую скриптообразные функтоиды на моей карте.Я настроил скриптоидные функтоиды, используя внешний помощник по сборке из сериализуемого класса.Я заметил, что когда map выполняется в первый раз, то вызывает конструктор вспомогательного класса Serializable, определенный во внешней сборке, и я init.значение по умолчанию для членов класса и работает как ожидалось.

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

Пожалуйста, помогите мне, как заставить biztalk создавать новые экземпляры вспомогательного класса карты во время каждого выполнения карты ??

Ответы [ 2 ]

0 голосов
/ 26 апреля 2012

Среда выполнения BizTalk кэширует экземпляры объекта расширения для данного типа карты.Конструктор будет вызываться только один раз для каждого экземпляра хоста, который его использует.

Однако вы можете создать класс фабрики для помощника по карте.Вызовите этот фабричный класс из скриптового функтоида и свяжите выходные данные со встроенным функтоидом C #, который сохраняет объект в поле экземпляра на карте.Вы можете ссылаться на это поле в других скриптообразных функтоидах, которые должны вызывать методы вашего помощника.

0 голосов
/ 20 декабря 2011

См. Этот пост относительно вызовов внешней сборки Biztalk .У вас не может быть статического класса - вспомогательный метод должен быть статическим, но вам необходимо каждый раз выполнять инициализацию в статическом методе.Это делается для государственного управления во время регидратации / дегидратации.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...