如何查询没有特定区域的AWS服务

时间:2019-07-19 05:40:18

标签: .net amazon-web-services aws-regions

我正在使用AWS .Net SDK并尝试通过创建如下所示的适当客户端来查询AWS服务

var cred = new BasicAWSCredentials(awsAccessKeyId, awsSecretKeyId);
using (AmazonEC2Client ec2Client = new AmazonEC2Client(cred, region))
{
    // code here  
}

上面的方法工作正常,但是还有AmazonEC2Client的重载方法,该方法不需要指定区域,但是当我尝试创建不带区域的客户端(如下所示)时,它会给出错误:Amazon.Runtime.AmazonClientException: No RegionEndpoint or ServiceURL configured

  

未配置RegionEndpoint或ServiceURL

using (AmazonEC2Client ec2Client = new AmazonEC2Client(cred))
{
    // code here  
}

请告诉我以上代码是否有问题,或者有什么方法可以查询AWS服务,而不论其区域是什么。

谢谢

1 个答案:

答案 0 :(得分:0)

您可以使用AWSConfigs.AWSRegion属性来全局配置区域。

AWSConfigs.AWSRegion = "us-east-1";
using (var ec2Client = new AmazonEC2Client())
{
  // Make request to Amazon EC2 using ec2Client
}

或者您可以在AWSRegion文件的appSettings部分中设置app.config键。

<configuration>
  <appSettings>
    <add key="AWSRegion" value="us-west-2"/>
  </appSettings>
</configuration>

https://docs.aws.amazon.com/sdk-for-net/v3/developer-guide/net-dg-region-selection.html