AWS 错误 "EC2Client is 'friend'" - .NET SDK 中的错误?

AWS error "EC2Client is 'friend'" - bug in SDK for .NET?

我正在尝试在 vb.net 中编写一个程序,它使用 AWS 的 Web 服务来更改 EC2 中安全组的权限。 我已经为 .Net 安装了 AWS SDK。

我在 http://awsdocs.s3.amazonaws.com/sdk-net/latest/aws-sdk-net-dg.pdf(第 39 页)上找到了如何在 C# 中执行此操作的示例。

我已经设法将代码翻译成 vb,但我收到有关以下两行中的第二行的错误:

Dim ec2Client As New AmazonEC2Client(credentials, config)
 Dim ingressResponse As AuthorizeSecurityGroupIngressResponse = ec2Client.AuthorizeSecurityGroupIngress(ingressRequest)

第二行给出的错误 Visual Studio 是:

Amazon.EC2.AmazonEC2Client.Friend Function AuthorizeSecurityGroupIngress(request As Amazon.EC2.Model.AuthorizeSecurityGroupIngressRequest) As Amazon.EC2.Model.AuthorizeSecurityGroupIngressResponse' is not accessible in this context because it is 'Friend'.

我已经阅读了我能找到的有关该主题的所有内容,并将其发布在 AWS 论坛上,但没有任何帮助。

Visual Studio 中的所有其他 AWS 引用似乎都很好,所以我开始怀疑这是否是 .NET SDK 中的错误。

我迫切需要帮助,因为没有这条线我无法调用 AWS 网络服务。

如有任何建议,我们将不胜感激!

行中:

Dim ingressResponse As AuthorizeSecurityGroupIngressResponse() = ec2Client.AuthorizeSecurityGroupIngress(ingressRequest)

您将 AuthorizeSecurityGroupIngress 的响应存储在 function() 而不是变量中。

AuthorizeSecurityGroupIngressResponse()改为AuthorizeSecurityGroupIngressResponse

我认为这是一个错误;但是,我找到了一种通过使用 AuthorizeSecurityGroupIngressAsync 而不是 AuthorizeSecurityGroupIngress:

来绕过它的方法
             Dim ec2Client As New AmazonEC2Client(credentials, config)
            Dim ingressResponse As System.Threading.Tasks.Task(Of AuthorizeSecurityGroupIngressResponse) = ec2Client.AuthorizeSecurityGroupIngressAsync(ingressRequest)