Сообщество программистов Autodesk в СНГ

ADN Club => JavaScript и web-программирование для ПО Autodesk => Тема начата: dmitrymaslakov от 19-09-2022, 10:53:09

Название: Поле командного класса == null при вызове метода .net API через JS API
Отправлено: dmitrymaslakov от 19-09-2022, 10:53:09

(https://i.postimg.cc/2Ln5fn68/host-was-null.png) (https://postimg.cc/2Ln5fn68)

Вопрос озвучен в теме. При запуске метода напрямую, т. е. с присвоением ему атрибута CommandMethod такой ошибки не возникает.
Название: Re: Поле командного класса == null при вызове метода .net API через JS API
Отправлено: Александр Ривилис от 19-09-2022, 18:30:20
Попробуй создавать _host в методе IExtensionApplication.Initialize
Название: Re: Поле командного класса == null при вызове метода .net API через JS API
Отправлено: dmitrymaslakov от 20-09-2022, 09:15:35
Не работает.
Я установил точку останова на конструкторе и немного потестил поведение. Как я понимаю, вызов экземплярного метода напрямую в автокаде создает новый объект командного класса, происходит инициализация полей через конструктор. Но при вызове через JS API инициалицации никакой не происходит, т. к. в режиме debug прога пролетела мимо breakpoint. Вобщем, я сделал поля статичными и в этом случае работает.