Это не становится проще в V2, но есть механизм расширения, о котором вы можете не знать.
Я считаю, что часть проблемы заключается в обработке PowerShell (или его отсутствии) обобщений.
Кроме того, для применения методов расширения необходимо применять типизированные коллекции, что сложно в PowerShell. PowerShell, как динамический язык, поддерживает создание коллекций различных типов, и большинство коллекций представлены в виде массивов Object. Методы расширения требуют, чтобы параметры были выведены из типа коллекции, а затем проверенный предикат был правильного типа.
Если вас интересуют некоторые функции, подобные LINQ, существует несколько командлетов, которые предоставляют одинаковые функции при работе с коллекциями объектов.
Система расширенных типов PowerShell позволяет добавлять методы к различным типам, добавляя XML-файл или изменяя существующий (рекомендуемый путь - создание нового). Джеффри Сновер демонстрирует это путем добавления ScriptProperty к классу Object в этом сообщении в блоге .
Это не совсем то же самое, но это может сделать работу.