

La AWS SDK per .NET V3 è entrata in modalità manutenzione.

[Ti consigliamo di migrare alla V4.AWS SDK per .NET](https://docs.aws.amazon.com/sdk-for-net/v4/developer-guide/welcome.html) Per ulteriori dettagli e informazioni su come eseguire la migrazione, consulta il nostro annuncio sulla modalità di [manutenzione](https://aws.amazon.com/blogs/developer/aws-sdk-for-net-v3-maintenance-mode-announcement/).

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Migrazione alla versione 3 di AWS SDK per .NET
<a name="migration-v3"></a>

Questo argomento descrive le modifiche alla versione 3 di AWS SDK per .NET e come migrare il codice a questa versione dell'SDK.

## Informazioni sulle versioni AWS SDK per .NET
<a name="net-dg-migrate-v3-intro"></a>

Il AWS SDK per .NET, originariamente rilasciato nel novembre 2009, è stato progettato per.NET Framework 2.0. Da allora, .NET è stato migliorato con le versioni .NET Framework 4.0 e .NET Framework 4.5 e ha aggiunto nuove piattaforme di destinazione: WinRT e Windows Phone.

AWS SDK per .NET la versione 2 è stata aggiornata per sfruttare le nuove funzionalità della piattaforma .NET e per indirizzarsi a WinRT e Windows Phone.

AWS SDK per .NET la versione 3 è stata aggiornata per rendere modulari gli assiemi.

## Riprogettazione dell'architettura per l'SDK
<a name="net-dg-migrate-v3-arch"></a>

L'intera versione 3 di AWS SDK per .NET è stata riprogettata per essere modulare. Ogni servizio è ora implementato nel relativo assembly, anziché in un unico assembly globale. Non è più necessario aggiungere il tutto AWS SDK per .NET all'applicazione. È ora possibile aggiungere assiemi solo per i AWS servizi utilizzati dall'applicazione.

## Modifiche rivoluzionarie
<a name="net-dg-migrate-v3-breaking"></a>

Le seguenti sezioni descrivono le modifiche alla versione 3 di AWS SDK per .NET.

### AWSClientRimosso in fabbrica
<a name="awsclientfactory-removed"></a>

La classe `Amazon.AWSClientFactory` è stata rimossa. Ora, per creare un client di servizio, utilizza il costruttore del client di servizio. Ad esempio, per creare `AmazonEC2Client`:

```
var ec2Client = new Amazon.EC2.AmazonEC2Client();
```

### Amazon.Runtime. AssumeRoleAWSCredentials Rimosso
<a name="assumeroleawscredentials-removed"></a>

La `Amazon.Runtime.AssumeRoleAWSCredentials` classe è stata rimossa perché si trovava in uno spazio dei nomi principale ma dipendeva da e perché era obsoleta nell'SDK da qualche tempo. AWS Security Token Service Al su posto, utilizza la classe `Amazon.SecurityToken.AssumeRoleAWSCredentials`.

### Metodo SetACL rimosso da S3Link
<a name="setacl-removed"></a>

La `S3Link` classe fa parte del `Amazon.DynamoDBv2` pacchetto e viene utilizzata per archiviare oggetti in Amazon S3 che sono riferimenti in un elemento DynamoDB. Questa è una funzionalità utile, ma non volevamo creare una dipendenza di compilazione dal `Amazon.S3` pacchetto per DynamoDB. Di conseguenza, abbiamo semplificato i metodi esposti `Amazon.S3` dalla classe `S3Link`, sostituendo il metodo `SetACL` con il metodo `MakeS3ObjectPublic`. Per un maggiore controllo sulla lista di controllo accessi (ACL) sull'oggetto, utilizza direttamente il pacchetto `Amazon.S3`.

### Rimozione delle classi risultanti obsolete
<a name="result-classes-removed"></a>

Per la maggior parte dei servizi di AWS SDK per .NET, le operazioni restituiscono un oggetto di risposta che contiene i metadati per l'operazione, come l'ID della richiesta e un oggetto risultato. Avere una risposta separata e una classe risultante era ridondante e creava un'ulteriore digitazione per gli sviluppatori. Nella versione 2 di AWS SDK per .NET, inseriamo tutte le informazioni della classe dei risultati nella classe di risposta. Abbiamo inoltre contrassegnato come obsolete le classi risultanti per scoraggiarne l'uso. Nella versione 3 di AWS SDK per .NET, abbiamo rimosso queste classi di risultati obsolete per ridurre le dimensioni dell'SDK.

### AWS Modifiche alla sezione Config
<a name="configs-changes"></a>

È possibile eseguire la configurazione avanzata del AWS SDK per .NET `Web.config` file `App.config` o. A tale scopo viene utilizzata una sezione di configurazione `<aws>` come quella riportata di seguito, che fa riferimento al nome dell'assembly SDK.

```
<configuration>
  <configSections>
    <section name="aws" type="Amazon.AWSSection, AWSSDK"/>
  </configSections>
  <aws region="us-west-2">
    <logging logTo="Log4Net"/>
  </aws>
</configuration>
```

Nella versione 3 di AWS SDK per .NET, l'`AWSSDK`assieme non esiste più. Abbiamo inserito il codice comune nell'assembly `AWSSDK.Core`. Di conseguenza, dovrai modificare i riferimenti all'assembly `AWSSDK` nel file `App.config` o `Web.config` all'assembly `AWSSDK.Core`, come riportato di seguito.

```
<configuration>
  <configSections>
    <section name="aws" type="Amazon.AWSSection, AWSSDK.Core"/>
  </configSections>
  <aws region="us-west-2">
    <logging logTo="Log4Net"/>
  </aws>
</configuration>
```

Puoi anche modificare le impostazioni di configurazione mediante la classe `Amazon.AWSConfigs`. Nella versione 3 di AWS SDK per .NET, abbiamo spostato le impostazioni di configurazione per DynamoDB dalla classe `Amazon.AWSConfigs` alla classe. `Amazon.AWSConfigsDynamoDB`