Инстанциирование плагинов в CRM 2013
Есть много плагинов, работающих с внешним хранилищем данных.
В плагины нужно как-то передавать настройки подключения к этому хранилищу.
Secure/Unsecure configuration для хранения настроек не подходит, так как плагинов реально много и перенос Dev->Test->PreProd->Prod превратиться в Ад.
Хранить настройки в CRM в сущности и запрашивать их каждый раз при выполнении плагина как то не очень хочется из соображений производительности (лишний запрос в систему).
Недолгие эксперименты показали, что экземпляр класса плагина создается один раз, а потом только вызывается метод Execute. В связи с этим появилась идея добавить в плагин приватных полей и запрашивать настройки из сущности CRM один раз, а потом проверять не пустые ли они и если нет, то использовать их.
Но есть сомнения. действительно ли экземпляр класса плагина во всех случаях создается один раз и потом висит в памяти.
Стоит ли вообще использовать такой подход?..
|