}では何が列挙可能(Enumerable)なのか?PowerShellのコレクションにおいて何が列挙可能かについて仕様書等を調べてみましたが、具体的に明記されたものを見つけることができませんでした。*1仕方ないので現時点の最新のソースコードを調べたところ、System.Management.Automation.LanguagePrimitivesクラス(その1、その2)でどの型が列挙可能(Enumerable)かを判定してると思われる部分を見つけたので以下に転記しておきます。}この記述によれば、System.Data.DataTableクラス*2System.String、System.Collections.IDictionaryインターフェイス、System.Xml.XmlNodeを除いたSystem.Collections.IEnumerableインターフェイスが列挙可能の様でこれまでの挙動とも一致します。enumerable...のコメントの通り、Hashtableを含むIDictionaryは意図的に列挙できない様にされている事がわかります。ちなみに、HashtableやDictonaryでGetEnumerator()メソッドを使うと列挙可能になるのは、このメソッドの戻り値がHashtableEnumeratorやEnumerator型になりIDictionaryインターフェイスが無くなるためです。おまけDataTableも列挙可能*3ということなので最後に動作確認をしてみます。