web-dev-qa-db-ja.com

Microsoft.Azure.StorageとWindowsAzure.Storage Nugetパッケージの違いは何ですか?

私はいつもこれが非常に紛らわしいと感じました。 Microsoftによって作成されたWindowsAzure.Storage Nugetパッケージがあり、これにより、たとえばBLOBストレージ(BLOBの作成など)を操作できます。同じことを達成するMicrosoft.Azure.Storage。*パッケージもあり、これもMicrosoftによって作成されています。プロジェクトがたまたま両方に依存している場合、名前の競合が発生する可能性があります。 (タイプ 'CloudStorageAccount'は、 'Microsoft.Azure.Storage.Common、...と' Microsoft.WindowsAzure.Storage、...の両方に存在します)。

2つの選択肢へのリンクは次のとおりです。

https://docs.Microsoft.com/en-us/dotnet/api/overview/Azure/storage?view=Azure-dotnet

https://github.com/Azure/azure-storage-net/blob/master/README.md

違いは何ですか?また、いつ使用するように動機付けられますか?

13
vargonian

WindowsAzure.Storage(最新はv9.3.2)は、常に使用するレガシーストレージSDKであり、Microsoft.Azure.Storage.*(最新v9.4.0)は新しいリリースであり、nugetは約1年で利用可能です。

Storage .NET SDKの changelog を確認します。これらの重要な違い/変更の一部をリストします。

  1. Microsoft.Azure.Storageは、ライブラリをBlob、Queue、およびFileの3つの部分に分割します。つまり、フルエディションではなく、個別のパッケージをインストールできます。

  2. Microsoft.Azure.StorageはテーブルAPIをサポートしていません。 Microsoft.Azure.Cosmos.Table に転送されます。

  3. Microsoft.Azure.Storageは、非同期APIでラップされた同期メソッドをサポートする9.4.0プレビュー以降のNetStandard2.0ターゲットサポートを追加しました。 WindowsAzure.Storage NetStandardには非同期APIのみがあります。

  4. Microsoft.Azure.Storage v9.4パッケージは、Microsoft.WindowsAzure.Storage名前空間を一時的に使用して、既存のライブラリの移行を容易にします。

要件に基づいて選択するだけです。

16
Jerry Liu