我尝试在PowerShell中声明List,其中Person是使用Add-Type定义的:
add-type -Language CSharpVersion3 -TypeDefinition @"
public class Person
{
public Person() {}
public string First { get; set; }
public string Last { get; set; }
}
"@ 这可以很好地工作:
New-Object Person
New-Object System.Collections.Generic.List``1[System.Object]但是这一行失败了:
New-Object System.Collections.Generic.List``1[Person]这里出了什么问题?
发布于 2009-03-27 05:27:28
这是New-Object中的一个错误。这将帮助您更轻松地创建它们:http://www.leeholmes.com/blog/2006/08/18/creating-generic-types-in-powershell
更新: PowerShell在版本2中添加了对此的支持:
PS > $r = New-Object "System.Collections.Generic.List[Int]"
PS > $r.Add(10)发布于 2012-08-30 08:38:50
好吧,我试图创建一个FileStream对象列表,这是我的解决方案(基于this link --它实际上描述了一种解决问题的方法):
$fs = New-Object 'System.Collections.Generic.List[System.IO.FileStream]'
$sw = New-Object 'System.Collections.Generic.List[System.IO.StreamWriter]'
$i = 0
while ($i < 10)
{
$fsTemp = New-Object System.IO.FileStream("$newFileName",[System.IO.FileMode]'OpenOrCreate',[System.IO.FileAccess]'Write')
$fs.Add($fsTemp)
$swTemp = New-Object System.IO.StreamWriter($fsTemp)
$sw.Add($swTemp)
$i++
}希望这能有所帮助!
https://stackoverflow.com/questions/688152
复制相似问题