新しいテクノロジーを学ぶたびに、私は可能な限り単純な例を書いています。通常これは、参照数が最も少ないコンソールアプリケーションを意味します。私はAzureテーブルストレージを読み書きするアプリケーションを書くのにはほとんど成功していない。私はthisハウツーガイドを基礎として使用しましたが、Mainメソッドですべてを実行しようとします。同様のアプローチはBLOBストレージでうまくいきましたが、テーブルストレージは問題を引き起こしています。Azureテーブルストレージ - 最も単純な可能性のある例
このコードでテーブルを作成することができました。
static void Main(string[] args)
{
Microsoft.WindowsAzure.Storage.Table.CloudTableClient tableClient =
new Microsoft.WindowsAzure.Storage.Table.CloudTableClient(
new Uri("http://mystorage.table.core.windows.net/"),
new Microsoft.WindowsAzure.Storage.Auth.StorageCredentials("[somename]", "[somekey]"));
CloudTable table = tableClient.GetTableReference("people");
table.CreateIfNotExists();
}
このコードを実行した後、私はAzure Storage Explorerを使用して、私のストレージの表を見ることができました。 (まだテーブルをmanage.windowsazure.comで見る方法は分かっていません)
しかし、レコードを挿入しようとすると(前に説明したハウツーガイドに記載されているように)、私は競合を起こします409 EntityAlreadyExists。 Azureストレージエクスプローラは、テーブルにレコードを表示しません。
CustomerEntity customer1 = new CustomerEntity("Harp", "Walter");
customer1.Email = "[email protected]";
customer1.PhoneNumber = "425-555-0101";
TableOperation insertOperation = TableOperation.Insert(customer1);
table.Execute(insertOperation);
また、2つの重複する名前空間に困惑しています。 Microsoft.WindowsAzure.Storage.TableとMicrosoft.WindowsAzure.StorageClientの両方には、 CloudTableClientクラス。なぜ2つのクライアントの名前空間があり、どちらを使うのですか?
EDITレコードが存在することが分かります。 Azure Table Explorerでテーブルをダブルクリックするだけでは、テーブルの内容は表示されません。クエリをクリックする必要があります。最後の質問はまだ立っています。なぜ2つの名前空間?
非常に便利な答えです。ローカルのAzure Storageエミュレータで使用する場合は、長い接続文字列を "UseDevelopmentStorage = true"に置き換えてください。 –
最後のリンクが壊れています – Serge
@Serge MSDNから削除されているようです。 – Rubio