

Das AWS Mobile SDK für Xamarin ist jetzt in der enthalten. AWS SDK für .NET Dieses Handbuch bezieht sich auf die archivierte Version des Mobile SDK für Xamarin.

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

# Verwenden von S3 Transfer Utility
<a name="s3-integration-transferutility"></a>

S3 Transfer Utility erleichtert das Hoch- und Herunterladen von Dateien nach bzw. aus S3 mit der Xamarin-Anwendung.

## Initialisieren Sie die TransferUtility
<a name="initialize-the-transferutility"></a>

Erstellen Sie einen S3-Client, übergeben Sie die AWS-Anmeldeinformationen und dann den S3-Client an das Dienstprogramm für die Datenübertragung, z. B.:

```
var s3Client = new AmazonS3Client(credentials,region);
var transferUtility = new TransferUtility(s3Client);
```

## (optional) Konfigurieren Sie TransferUtility
<a name="optional-configure-the-transferutility"></a>

Es gibt drei optionale Eigenschaften, die Sie konfigurieren können:
+  **ConcurrentServiceRequests**— Legt fest, wie viele aktive Threads oder wie viele gleichzeitige asynchrone Webanfragen für upload/download die Datei verwendet werden. Der Standardwert lautet 10.
+  **MinSizeBeforePartUpload**- Ruft die minimale Teilgröße für Upload-Teile in Byte ab oder legt sie fest. Der Standardwert ist 16 MB. Durch Absenken der minimalen Komponentengröße werden mehrteilige Hochladeoperationen in eine größere Zahl kleinerer Komponenten aufgeteilt. Wenn dieser Wert zu niedrig eingestellt und dadurch die Übertragungsgeschwindigkeit beeinträchtigt wird, verursacht dies zusätzliche Latenz und Netzwerkkommunikation für jede Komponente.
+  **NumberOfUploadThreads**- Ruft die Anzahl der ausgeführten Threads ab oder legt sie fest. Diese Eigenschaft bestimmt, wie viele aktive Threads verwendet werden, um die Datei hochzuladen. Der Standardwert lautet 10 Threads.

Um den TransferUtility S3-Client zu konfigurieren, erstellen Sie ein Konfigurationsobjekt, legen Sie Ihre Eigenschaften fest und übergeben Sie das Objekt wie folgt an Ihren TransferUtility Konstruktor:

```
var config = new TransferUtilityConfig();

config.ConcurrentServiceRequests = 10;
config.MinSizeBeforePartUpload=16*1024*1024;
config.NumberOfUploadThreads=10;

var s3Client = new AmazonS3Client(credentials);
var utility = new TransferUtility(s3Client,config);
```

## Herunterladen einer Datei
<a name="download-a-file"></a>

Um eine Datei aus S3 herunterzuladen, rufen Sie `Download` für das Transfer Utility-Objekt auf und übergeben dabei die folgenden Parameter:
+  `file`: Name der herunterzuladenden Datei als String
+  `bucketName`: Name des S3-Bucket, aus dem die Datei heruntergeladen werden soll
+  `key`: String, der den Namen des herunterzuladenden S3-Objekts (in diesem Fall eine Datei) angibt

```
transferUtility.Download(
  Path.Combine(Environment.SpecialFolder.ApplicationData,"file"),
  "bucketName",
  "key"
);
```

## Hochladen einer Datei
<a name="upload-a-file"></a>

Um eine Datei nach S3 hochzuladen, rufen Sie `Upload` für das Transfer Utility-Objekt auf und übergeben dabei die folgenden Parameter:
+  `file`: Name der hochzuladenden Datei als String
+  `bucketName`: Name des S3-Bucket, in dem die Datei gespeichert werden soll, als String

```
transferUtility.Upload(
  Path.Combine(Environment.SpecialFolder.ApplicationData,"file"),
  "bucketName"
);
```

Der obige Code geht davon aus, dass sich im Verzeichnis Environment eine Datei befindet. SpecialFolder. ApplicationData. Beim Hochladen wird automatisch die S3-Funktion für mehrteiliges Hochladen großer Dateien verwendet, um den Durchsatz zu verbessern.