Hallo zusammen,
vor kurzen habe ich über die neuen Versionen des Azure SDKs für .NET (hier) und dem Azure SDK für Windows 8 und .NET (hier) berichtet. Eine der neuen Komponenten ist die Windows Azure Storage Client Library 2.0, die ich heute im Detail vorstellen will.
Wenn ihr die Storage Client Library 2.0 in euren Anwendungen verwenden wollt, habt ihr die Möglichkeit die Binaries im Azure SDK für NET oder den Sourcecode im Azure SDK für Windows 8 und .NET zu verwenden. Einfacher geht es mit dem entsprechenden NuGet Package:
Für den Einsatz dieses NuGet Packages wird OData 3.0 benötigt. Dies setzt die Installation der WCF Data Services 5.0.2 voraus oder die Verwendung einer Preview der ODataLib (v.5.1). Die ODataLib steht ebenfalls als NuGet Package bereit:
Informationen zur ODataLib
Was ist neu in der Windows Azure Storage Client Library 2.0?
- Die Windows Azure Storage Client Library 2.0 benötigt NET Framework 4.0 (bisher v.3.5) oder höher.
- Die Windows Azure Storage Client Library 2.0 funktioniert auch mit einer NET Client Profile Installation 🙂
- Die Windows Azure Storage Client Library 2.0 erhält mit der Microsoft.WindowsAzure.Storage.winmd und der Microsoft.WindowsAzure.Storage.Table.dll (eine Table Services Extension Library) Support für die Windows Runtime (Achtung! CTP)
- Die Windows Azure Storage Client Library 2.0 folgt einem strikten Synchronous und Asynchronous Programming Model
Machen wir inhaltlich weiter:
Namespaces
- Der Namespace lautet nicht mehr Microsoft.WindowsAzure.StorageClient, sondern nur noch Microsoft.WindowsAzure.Storage.
- Für jede Storage Ebene (Blob, Queue, Table) gibt es ab sofort einen Subnamespace (z.B. Microsoft.WindowsAzure.Storage.Blob)
- Jeder Subnamespace (Blob, Queue, Table) enthält einen Subnamespace Protocol (z.B. Microsoft.WindowsAzure.Storage.Blob.Protocol). – Hier werden die servicespezifische Konstrukte untergebracht.
- Für den Bereich Table Storage Service gilt folgende Ausnahme:
Microsoft.WindowsAzure.Storage.Table – beinhaltet die Table Services Implementation auf Basis von OData 3.0 (Neu)
Microsoft.WindowsAzure.Storage.Table.DataServics – beinhaltet die Table Services Implementation auf Basis von System.Data.Services.Client (Legacy Code)
Kleiner Hinweis für alle, die bestehende Table Service Anwendungen migrieren wollen: Denkt jetzt über eine Re-Implementierung nach und nutzt die Möglichkeiten von OData.
Classes
- Aus den Klassen StorageClientException und StorageServerException wird die einheitliche Klasse StorageException
- Die Klasse StorageException enthält keine ExtendedErrorInformation mehr. Diese sind jetzt Bestandteil der RequestResult – Objekte.
- Aus den Klassen BlobRequest und BlobResponse wird BlobHttpWebRequestFactory bzw. BlobHttpResponseParsers
- Aus den Klassen QueueRequest und QueueResponse wird QueueHttpWebRequestFactory bzw. QueueHttpResponseParsers
- Aus den Klassen TableRequest und TableResponse wird TableHttpWebRequestFactory bzw. TableHttpResponseParsers
Es gibt noch so viele Änderungen inhaltlicher Natur, dass ich eine Fortsetzung dieses Artikels in den nächsten Tagen veröffentlichen werde.
Ein Goodie hab ich aber noch 😉
Jeder der den Sourcecode aus dem Azure SDK für Windows 8 und .NET verwendet, kann sich über 450 neue Unittests freuen 🙂
Schöne Grüße
Oliver