のバージョン 4 (V4) AWS SDK for .NET がリリースされました。
SDK の新しいバージョンの使用を開始するには、「AWS SDK for .NET (V4) デベロッパーガイド」、特に「バージョン 4 への移行」に関するトピックを参照してください。
翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
バージョン 3 の AWS SDK for .NET への移行
このトピックでは、AWS SDK for .NET のバージョン 3 での変更点、およびこのバージョンの SDK へのコードの移行方法について説明します。
AWS SDK for .NET のバージョンについて
当初、AWS SDK for .NET は 2009 年 11 月にリリースされ、.NET Framework 2.0 向けに設計されていました。このリリース以降、.NET は .NET Framework 4.0 および .NET Framework 4.5 で改善され、新しい対象プラットフォームとして WinRT と Windows Phone が追加されています。
AWS SDK for .NET バージョン 2 では、.NET プラットフォームの新機能を利用するように更新され、WinRT と Windows Phone も対象プラットフォームとして追加されました。
AWS SDK for .NET バージョン 3 ではアセンブリがモジュール化されました。
SDK のアーキテクチャの再設計
バージョン 3 の AWS SDK for .NET 全体がモジュラー式に再設計されています。1 つの大きなアセンブリとしてではなく、各サービスが個別のアセンブリとして実装されます。AWS SDK for .NET 全体をアプリケーションに追加する必要はなくなりました。アプリケーションで使用する AWS サービスのアセンブリだけを追加できます。
破壊的変更
以下のセクションでは、バージョン 3 の AWS SDK for .NET への変更点について説明します。
AWSClientFactory の削除
Amazon.AWSClientFactory クラスは削除されました。現在、サービスクライアントを作成するには、サービスクライアントのコンストラクタを使用します。たとえば、AmazonEC2Client を作成するには:
var ec2Client = new Amazon.EC2.AmazonEC2Client();
Amazon.Runtime.AssumeRoleAWSCredentials の削除
Amazon.Runtime.AssumeRoleAWSCredentials クラスは、コア名前空間内にありながら AWS Security Token Service に依存していたこと、および長い間 SDK で使用されていなかったことから、削除されました。代わりに、Amazon.SecurityToken.AssumeRoleAWSCredentials クラスを使用してください。
S3Link からの SetACL メソッドの削除
S3Link クラスは Amazon.DynamoDBv2 パッケージの一部であり、DynamoDB 項目内の参照であるオブジェクトを Amazon S3 に保存するために使用されています。これは便利な機能ですが、Amazon.S3 パッケージに DynamoDB に対するコンパイル依存関係を作成するのは好ましくありませんでした。結果として、Amazon.S3 クラスで公開されている S3Link メソッドを簡素化し、SetACL メソッドを MakeS3ObjectPublic メソッドに置き換えました。オブジェクトでアクセスコントロールリスト (ACL) を細かく制御する場合は、Amazon.S3 パッケージを使用します。
サポートされなくなった結果クラスの削除
AWS SDK for .NET のほとんどのサービスでは、操作は、リクエスト ID や結果オブジェクトなどの操作のメタデータを含む応答オブジェクトを返します。応答クラスと結果クラスを分けておくと、冗長であり、開発者は余分な入力が必要でした。AWS SDK for .NET のバージョン 2 では、結果クラスのすべての情報をレスポンスクラス内に移しました。また、結果クラスをサポート対象外として、その使用を非推奨にしました。AWS SDK for .NET のバージョン 3 では、これらのサポートされなくなった結果クラスを削除して SDK のサイズを減らしました。
AWS Config セクションの変更
AWS SDK for .NET または App.config ファイルを使用して、Web.config の詳細設定を行うことができます。これは、SDK アセンブリ名を参照する、次のような <aws> config セクションを通じて行います。
<configuration> <configSections> <section name="aws" type="Amazon.AWSSection, AWSSDK"/> </configSections> <aws region="us-west-2"> <logging logTo="Log4Net"/> </aws> </configuration>
AWS SDK for .NET のバージョン 3 では、AWSSDK アセンブリは存在しなくなりました。共通コードは AWSSDK.Core に格納しました。そのため、AWSSDK ファイルまたは App.config ファイルでの Web.config アセンブリへの参照を、次のように AWSSDK.Core アセンブリを参照するように変更する必要があります。
<configuration> <configSections> <section name="aws" type="Amazon.AWSSection, AWSSDK.Core"/> </configSections> <aws region="us-west-2"> <logging logTo="Log4Net"/> </aws> </configuration>
また、Amazon.AWSConfigs クラスで構成設定を操作できます。AWS SDK for .NET のバージョン 3 では、DynamoDB の構成設定を Amazon.AWSConfigs クラスから Amazon.AWSConfigsDynamoDB クラスに移しました。