我想用 C# 创建自定义资源。在此资源中,我想创建一个 AwsSdkCall,如下所示:
var sdkCall = new AwsSdkCall
{
Service = "SSM",
Action = "putParameter",
Parameters = new PutParameters
{
Name = "/my-param",
Tier = Amazon.SimpleSystemsManagement.ParameterTier.Standard,
Type = Amazon.SimpleSystemsManagement.ParameterType.String,
Value = "My value"
}
};
Parameters
字段的类型为object?
。我尝试在这里使用匿名对象,但我从 JSII 运行时得到一个异常,它无法处理匿名对象。我尝试定义自己的类并使用它,但 JSII 运行时也不喜欢这样。
该字段应该使用什么类型才能正确指定 SDK 调用的参数?
您应该使用字典作为参数。
Parameters = new Dictionary<string, object>
{
{ "Name", "/my-param" },
{ "WithDecryption", true }
}
参考:https://docs.aws.amazon.com/cdk/api/v2/dotnet/api/Amazon.CDK.CustomResources.AwsSdkCall.html