2012-01-21 11 views

risposta

8

È possibile trovare le regioni e gli endpoint here.

E esempio come connettersi a UE:

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

È possibile anche utilizzare un definizioni endpoint forniti con Amazon SDK:

var ec2Client = new AmazonEC2Client(RegionEndpoint.EUWest1); 

Poiché credo codificare tali valori come indirizzi endpoint non è una best practice utilizzo una versione più configurabile (ovvero endpoint configurato da web.config/app.config):

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

Questa dovrebbe essere la risposta corretta. Inoltre mi sono imbattuto in questo mentre stavo cercando un elenco di possibili stringhe SystemName che potrebbero essere passati al metodo GetBySystemName ... Anche se non ho trovato la risposta qui l'ho trovata su https://github.com/xamarin/ amazon/blob/master/AWSSDK/RegionEndpoint.cs per chiunque incontri questa domanda alla ricerca di valori SystemName validi. – DVS

1

È anche possibile definire la regione AWS nel file di configurazione utilizzando il codice regione:

<?xml version="1.0" encoding="utf-8" ?> 
<configuration> 
    <appSettings> 
    <add key="AWSProfileName" value="default"/> 
    <add key="AWSRegion" value="eu-west-1"/> 
    </appSettings> 
</configuration> 

allora si può semplicemente instanciate tua ec2Client senza alcuna regione:

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

uscita:

EU West (Ireland) 

Le regioni e il punto finale sono definiti qui: http://docs.aws.amazon.com/general/latest/gr/rande.html