Вход на сайт
Веселая фича
565 просмотров
Перейти к просмотру всей ветки
в ответ Posmotrim 16.01.13 16:23
Хммм... Ну хорошо...
Где-то в недрах Linq происходит вызов приватного конструктора TTemplatesDll или класс инстанцируется без вызова.
Причина такого поведения, скорее всего в том, что Linq сам по себе инстанцирует обьекты и делает это где-то в отдельном блоке памяти.
Как результат - там действительно создается другой инстансе singleton'a TTemplatesDll и он непаравильно инициализирован.
Наверное есть какой-то метод как сообщить Linq что ему нужен полный клон обьекта, но мне было лениво копать и обошел по-другому - убрал статику.
Где-то в недрах Linq происходит вызов приватного конструктора TTemplatesDll или класс инстанцируется без вызова.
Причина такого поведения, скорее всего в том, что Linq сам по себе инстанцирует обьекты и делает это где-то в отдельном блоке памяти.
Как результат - там действительно создается другой инстансе singleton'a TTemplatesDll и он непаравильно инициализирован.
Наверное есть какой-то метод как сообщить Linq что ему нужен полный клон обьекта, но мне было лениво копать и обошел по-другому - убрал статику.