第 4 版 (V4) 適用於 .NET 的 SDK 正在預覽!若要在預覽中查看此新版本的相關資訊,請參閱 適用於 .NET 的 AWS SDK (第 4 版預覽) 開發人員指南。
請注意,開發套件的 V4 處於預覽狀態,因此其內容可能會有所變更。
本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
遷移至 第 3 版 適用於 .NET 的 AWS SDK
本主題說明 第 3 版的變更, 適用於 .NET 的 AWS SDK 以及如何將程式碼遷移至此版本的 SDK。
關於 適用於 .NET 的 AWS SDK 版本
適用於 .NET 的 AWS SDK最初於 2009 年 11 月發行,專為 .NET Framework 2.0 而設計。由於該版本發佈,.NET 使用 .NET Framework 4.0 和 .NET Framework 4.5,和新增新的目標平台:WinRT 和 Windows Phone。
適用於 .NET 的 AWS SDK 第 2 版已更新,以利用 .NET 平台的新功能,並以 WinRT 和 Windows Phone 為目標。
適用於 .NET 的 AWS SDK 第 3 版已更新,使組件模組化。
適用於開發套件的架構重新設計
整個 第 3 版 適用於 .NET 的 AWS SDK 已重新設計為模組化。每個服務都在自己的組件內實作,而不是在一個全球組件內。您不再需要將整個 新增至 適用於 .NET 的 AWS SDK 您的應用程式。您現在可以僅為應用程式使用 AWS 的服務新增組件。
突破性變更
以下章節說明 適用於 .NET 的 AWS SDK版本 3 的變更。
移除 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
套件的一部分,用於在 Amazon S3 中存放做為 DynamoDB 項目中參考的物件。這是有用的功能,但我們不想在 DynamoDB 的 Amazon.S3
套件上建立編譯相依性。因此,我們簡化 S3Link
類別裡公開的 Amazon.S3
方法,我們用 MakeS3ObjectPublic
方法取代 SetACL
方法。如需更多物件的控制存取控制清單 (ACL) 的控制權,請直接使用 Amazon.S3
套件。
移除已淘汰的結果類別
對於 中的大多數服務 適用於 .NET 的 AWS SDK, 操作會傳回包含操作中繼資料的回應物件,例如請求 ID 和結果物件。額外擁有單獨回應和結果類別,並為開發人員建立額外輸入。在 第 2 版中 適用於 .NET 的 AWS SDK,我們會將結果類別中的所有資訊放入回應類別。同時,我們也標示已淘汰的結果類別,建議不再使用。在 第 3 版中 適用於 .NET 的 AWS SDK,我們移除了這些已淘汰的結果類別,以協助減少 SDK 的大小。
AWS 組態區段變更
您可以透過 適用於 .NET 的 AWS SDK App.config
或 Web.config
檔案執行 的進階組態。您可透過 <aws>
config,如下列所提參考的開發套件組件名稱,來完成此項作業。
<configuration> <configSections> <section name="aws" type="Amazon.AWSSection, AWSSDK"/> </configSections> <aws region="us-west-2"> <logging logTo="Log4Net"/> </aws> </configuration>
在 第 3 版中 適用於 .NET 的 AWS SDK,AWSSDK
組件不再存在。我們將常見程式碼到放入 AWSSDK.Core
組件中。所以,您將需要您的 App.config
或 Web.config
檔案中對 AWSSDK
組件的參考更改為 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
類別操作組態設定。在 第 3 版中 適用於 .NET 的 AWS SDK,我們將 DynamoDB 的組態設定從 Amazon.AWSConfigs
類別移至 Amazon.AWSConfigsDynamoDB
類別。