У меня есть сборка DLL, которая возвращает список (из EmailItem).EmailItem - это пользовательский класс, который включает некоторые свойства, которые загружаются из-за времени обработки, которое они тратят на выполнение.Они в основном являются помощниками, основываясь на моих бизнес-требованиях.
Когда я работаю с этими объектами в своих службах Windows и приложениях консоли, эти свойства спокойно ожидают вызова.
Однако, если яиспользуйте PoSh для получения набора этих классов, затем используйте Where-Object для их фильтрации, каждое из этих свойств оценивается, даже если на них нет ссылок в блоке скриптов Where-Object или где-либо еще в сценарии.Я пытался написать собственный фильтр, но у меня такое же поведение.Даже проецирование значений, которые мне нужны, с помощью Select-Object делает то же самое.
Мое лучшее предположение о том, что объекты преобразуются в PSObjects, а PowerShell заполняет свойства.Есть идеи, как этого избежать или отключить для этого сценария?Я нахожусь в процессе добавления «облегченных» объектов, которые не включают в себя эти помощники, но это надоедливый объем работы только для поддержки моего любимого языка сценариев Windows.
Спасибо за любые советы!