我想创建一个任意值的对象,有点像我在C#中如何做到这一点
var anon = new { Name = "Ted", Age = 10 };
Run Code Online (Sandbox Code Playgroud)
Luk*_*ett 29
试试这个:
PS Z:\> $o = @{}
PS Z:\> $o.Name = "Ted"
PS Z:\> $o.Age = 10
Run Code Online (Sandbox Code Playgroud)
注意:您还可以将此对象包含在其中-Body,Invoke-RestMethod并且它将对其进行序列化而无需额外的工作.
正如@Vasyl上面指出的那样,可接受的答案会创建一个哈希表,该哈希表实际上没有属性,但是包含一个包含字典的字典keys,values因此它将与其他一些PS函数一起工作
看到: $o | Select -Property *
而是,按照4种创建PowerShell对象的方法,尝试以下任何一种方法:
#1可能是最新,最简单的语法,除非您有强烈的偏好
PSCustomObject$o = [pscustomobject]@{
Name = "Ted";
Age = 10
}
Run Code Online (Sandbox Code Playgroud)
Select-Objectcmdlet$o = Select-Object @{n='Name';e={'Ted'}},
@{n='Age';e={10}} `
-InputObject ''
Run Code Online (Sandbox Code Playgroud)
New-Object和Add-Member$o = New-Object -TypeName psobject
$o | Add-Member -MemberType NoteProperty -Name Name -Value 'Ted'
$o | Add-Member -MemberType NoteProperty -Name Age -Value 10
Run Code Online (Sandbox Code Playgroud)
New-Object和哈希表$properties = @{
Name = "Ted";
Age = 10
}
$o = New-Object psobject -Property $properties;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7758 次 |
| 最近记录: |