2010-09-09 101 views
4

我試圖使用Roger Jennings在他的書「雲計算與Windows Azure」中推薦的示例,但他使用的是版本1.我正在使用v1。 2並且有很多不同之處。首先,我必須使用更正的名稱空間和其他更改重新編譯StorageClient DLL。然後,當我使用他的代碼在應用程序啓動時創建一個表時,我得到一個「超出範圍索引」。如何使用Azure中的表存儲創建新表格

有沒有人設法在應用程序啓動時成功創建表?如果是這樣,怎麼樣?另外,如果有任何使用1.2版的教程/示例,我也會非常感謝他們。

回答

6

您不必再重建樣本存儲客戶端庫。 V1.2它將自動添加三個DLL引用您的角色:

  • Microsoft.WindowsAzure.Diagnostics
  • Microsoft.WindowAzure.ServiceRuntime
  • Microsoft.WindowsAzure.StorageClient

要創建一個表,您需要首先設置表格:

  • 創建派生自TableServiceEntity的類(比如說,「MyEntity」) -
  • 從TableServiceContext派生表類(例如,「MyEntityDataServiceContext」)。在該類中,創建DataServiceQuery類型的屬性< MyEntity>(),返回CreateQuery < MyEntity>(「MyEntities」);

一旦你做到了這一點,創建碼錶是這樣的:

var account = CloudStorageAccount.DevelopmentStorageAccount; 
CloudTableClient.CreateTablesFromModel(typeof(MyEntityDataServiceContext),account.TableEndpoint.AbsoluteUri, account.Credentials); 

對於這一個更詳細的研究,下載Azure Platform Training Kit。有一個名爲「探索Windows Azure存儲」的實驗室,涵蓋了所有這些。

+1

+1:只是「automagically」這個詞:o)會讓你知道我是怎麼開始的。感謝你的回答。 – 2010-09-09 13:41:58