如何为C#.NET SDK设置EndPoint / Region:EC2Client?

时间:2012-01-21 00:33:46

标签: amazon-s3 region endpoint

在JAVA SDK中,可以设置端点,请参阅here

但是如何为.NET SDK做到这一点?有什么名字可供使用?

因为似乎总是使用默认端点“US East(Northern Virginia)Region”。

3 个答案:

答案 0 :(得分:18)

您还可以使用随Amazon SDK提供的端点定义:

var ec2Client = new AmazonEC2Client(RegionEndpoint.EUWest1);

由于我认为对端点地址这样的值进行硬编码不是最佳实践,因此我使用了更多可配置版本(即从web.config / app.config配置的端点):

var region = RegionEndpoint.GetBySystemName("eu-west-1");
var ec2Client = new AmazonEC2Client(region);

答案 1 :(得分:8)

可以找到区域和终端here

以及如何连接欧盟的例子:

AmazonEC2 ec2 = AWSClientFactory.CreateAmazonEC2Client("key", "secret",
    new AmazonEC2Config
    {
        ServiceURL = "http://ec2.eu-west-1.amazonaws.com"
    }
);

答案 2 :(得分:1)

您还可以使用区域代码

在配置文件中定义aws区域
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <appSettings>
    <add key="AWSProfileName" value="default"/>
    <add key="AWSRegion" value="eu-west-1"/>
  </appSettings>
</configuration>

然后你可以简单地实现你的ec2Client而不需要任何区域:

var ec2Client = new AmazonEC2Client();
Console.WriteLine(ec2Client.Config.RegionEndpoint.DisplayName);

输出:

EU West (Ireland)

区域和端点在此处定义:http://docs.aws.amazon.com/general/latest/gr/rande.html