2012-09-28 89 views
2

我正在從XML文件讀取各種對象的信息,並需要從PowerShell實例化這些對象並設置值。通過從PowerShell反射來調用靜態方法

這是一個示例,其中UInt32.Parse(string)應該使用反射檢索。問題是$mi變量爲空:

$o = new-object -typename "System.UInt32, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" 
$mi = $o.GetType().GetMethod("Parse", [type[]] @([string].GetType())) 

相應的C#代碼的工作:

UInt32 o = 0; 
var mi = o.GetType().GetMethod("Parse", new [] {typeof(string)}); 

任何想法?

回答

1

您是否需要使用反射?也許你可以用$parse = [system.uint32]::Parse$parse.Invoke($arg)代替。