IEnumerable <CustomType> в PowerShell

Я пытаюсь использовать Enumerable.ToList() в PowerShell. По-видимому, чтобы сделать это, я должен явно преобразовать объект в IEnumerable<CustomType>, но я не могу сделать это. Кажется, что я не могу правильно записать IEnumerable<CustomType> в PowerShell. Оба IEnumerable<string> и CustomType самостоятельно работайте правильно (пользовательский тип, который я пытаюсь использовать, назван WpApiLib.Page), таким образом, я не знаю то, что может я сделать неправильно.

PS C:\Users\Svick> [Collections.Generic.IEnumerable``1[System.String]]

IsPublic IsSerial Name                                     BaseType
-------- -------- ----                                     --------
True     False    IEnumerable`1


PS C:\Users\Svick> [WpApiLib.Page]

IsPublic IsSerial Name                                     BaseType
-------- -------- ----                                     --------
True     True     Page                                     System.Object


PS C:\Users\Svick> [Collections.Generic.IEnumerable``1[WpApiLib.Page]]
Unable to find type [Collections.Generic.IEnumerable`1[WpApiLib.Page]]: make su
re that the assembly containing this type is loaded.
At line:1 char:51
+ [Collections.Generic.IEnumerable``1[WpApiLib.Page]] <<<<
7
задан svick 28 April 2013 в 10:43
поделиться

2 ответа

См. Ответ здесь: Общие коллекции Powershell . Похоже, это неудачное последствие того, как PowerShell интерпретирует универсальные шаблоны, и вам необходимо полностью определить тип WpApiLib.Page .

3
ответ дан 7 December 2019 в 03:13
поделиться

В PowerShell v2 вы можете использовать

Collections.Generic.IEnumerable[string]

для ссылки на IEnumberable. Этот синтаксис работает для New-Object (хотя и не с интерфейсом) и, похоже, применим и для приведения.

6
ответ дан 7 December 2019 в 03:13
поделиться
Другие вопросы по тегам:

Похожие вопросы: