Я строю систему автоматизации с использованием Powershell и хотел бы определить пользовательские типы .Net, чтобы я мог структурировать свое приложение аналогично другому написанному мной коду.
Сначала я попытался использовать ' Add-Type ' для импорта типов из файлов c # в мое приложение, но я обнаружил, что это очень болезненно для отладки, так как тип .net можно загрузить только один раз во за сеанс Powershell. Это означает, что при возникновении ошибок одно изменение в моем коде требует от меня перезапуска приложения (возможно, я использую C #).
В настоящий момент я моделирую типы в Powershell, используя фабричные функции, которые динамически генерируют объекты PSO с нужной мне семантикой. Это работает, но очень многословно, и я не могу объявить закрытые переменные или методы для инкапсуляции.
Есть ли более простой способ добиться того, чего я хочу?
Если нет ....
Я как-то лаю не на том дереве, желая написать свой код Powershell, используя абстрактные типы данных?
Есть ли лучший способ структурировать мою систему, о которой я должен знать?
Могу ли я достичь некоторой инкапсуляции с тем, что я делаю сейчас?