以下代码获取的错误
添加类型:c:\Users。。。。cs(7(:表达式术语"["无效
c: \用户。。。。。cs(6(:返回新字典{
c: \用户。。。。。cs(7(:>>["aa"]="123",
c: \用户。。。。。cs(8(:["bb"]="235">
$Source = @"
using System.Collections.Generic;
public class BasicTest
{
public static Dictionary<string, string> Add(int a, int b)
{
return new Dictionary<string, string>{
["aa"] = "123",
["bb"] = "235"
};
}
public int Multiply(int a, int b)
{
return (a * b);
}
}
"@
Add-Type -TypeDefinition $Source
当我运行help Add-Type
时,其中一个选项是:
[-Language {CSharp | CSharpVersion3 | CSharpVersion2 | VisualBasic | JScript}]
它只有升级到C#3.0的选项,而C#3.0是.NET 3.5附带的。它所突破的语法是使用C#6.0中的一个功能。
注意:我的Powershell版本是5.1,它是Windows附带的,早于当前的开源Powershell:https://github.com/PowerShell/PowerShell。我敢打赌,你的例子将适用于更新的版本。