在C#中按名称访问PSObject属性

jam*_*123 10 c# powershell psobject

例如,我有一个PSObject事务,它有两个属性:id和transactionName,所以它看起来像:transaction {id:123 transactionName:tranName1}

如果它的名字是tranName1,我想返回事务的id.

在我看来,在powershell脚本中,我们可以简单地做到:

if $transaction.transactionName -eq tranName return $transaction.id
Run Code Online (Sandbox Code Playgroud)

但是在c#中它会给出错误,因为它无法通过名称识别属性...任何想法如何在c#中执行?

Mik*_*ard 23

尝试这样的事情:

psobjectvariable.Properties["transactionName"].Value
Run Code Online (Sandbox Code Playgroud)

  • @Roberto如果`propertyA`是一个PSObject,你可以这样做:`((PSObject)psobjectvariable.Properties["transactionName"].Value).Properties["propertyA"]` (2认同)