Вот способ
PS> $a = New-Object 'Tuple[string,int]'("Jack", 78)
PS> $a
Item1 Item2
----- -----
Jack 78
Еще один
PS> $dpt = New-Object 'Tuple[string,string,int]'("Cantal", "Aurillac", 15)
PS> $dpt.Item2
Aurillac
------ РЕДАКТИРОВАТЬ ------
Напомним
, чтобы увидеть, какой CLR вы используете, просто наберите $PSVersionTable
PS C:\> $PSVersionTable
Name Value
---- -----
CLRVersion 2.0.50727.4959
BuildVersion 6.1.7600.16385
PSVersion 2.0
WSManStackVersion 2.0
PSCompatibleVersions {1.0, 2.0}
SerializationVersion 1.1.0.1
PSRemotingProtocolVersion 2.1
если вы хотите, чтобы PowerShell начал использовать CLR 4.0, вы должны поместить файл powershell.exe.config
в папку $PSHOME
(C: \ Windows \ System32 \ WindowsPowerShell \ v1.0)
powershell.exe.config:
<?xml version="1.0"?>
<configuration>
<startup useLegacyV2RuntimeActivationPolicy="true">
<supportedRuntime version="v4.0.30319"/>
<supportedRuntime version="v2.0.50727"/>
</startup>
</configuration>
Результат:
PS C:\Users\JPB> $PSVersionTable
Name Value
---- -----
PSVersion 2.0
PSCompatibleVersions {1.0, 2.0}
BuildVersion 6.1.7600.16385
PSRemotingProtocolVersion 2.1
WSManStackVersion 2.0
CLRVersion 4.0.30319.225
SerializationVersion 1.1.0.1