2017-12-08 6 views
0

プロパティ値でテーブルをクエリします。私が持っている最後の12時間エンティティプロパティ値でMicrosoft Azureに問い合わせます。

:だから私は、私は はのPartitionKey = SECTION3 姓=値3 タイムスタンプ私のすべてのレコードを与えるクエリを作成したい私は、次の表

enter image description here

を持って言うことができますこれまでのコード:

// Retrieve the storage account from the connection string. 
     CloudStorageAccount storageAccount = CloudStorageAccount.Parse(
      CloudConfigurationManager.GetSetting("StorageConnectionString")); 

     // Create the table client. 
     CloudTableClient tableClient = storageAccount.CreateCloudTableClient(); 

     // Create the CloudTable object that represents the "asometrichub" table. 
     CloudTable table = tableClient.GetTableReference("customer"); 

     TableQuery rangeQuery = new TableQuery().Where(
        TableQuery.CombineFilters(
         TableQuery.GenerateFilterCondition("PartitionKey", QueryComparisons.Equal, "section3"), 
         TableOperators.And, 
         TableQuery.GenerateFilterConditionForDate("Timestamp", QueryComparisons.GreaterThanOrEqual, DateTime.UtcNow.AddHours(-12)))); 

FirstName = value3でどのようにフィルタリングするかわかりません。ありがとうございました!

答えて

1

TableQuery.CombineFilters()は、ネストされた方法で呼び出すことができます。

// Retrieve the storage account from the connection string. 
CloudStorageAccount storageAccount = CloudStorageAccount.Parse(
    CloudConfigurationManager.GetSetting("StorageConnectionString")); 

// Create the table client. 
CloudTableClient tableClient = storageAccount.CreateCloudTableClient(); 

// Create the CloudTable object that represents the "asometrichub" table. 
CloudTable table = tableClient.GetTableReference("customer"); 

string combinedFilter = TableQuery.CombineFilters(
    TableQuery.GenerateFilterCondition("PartitionKey", QueryComparisons.Equal, "section3"), 
    TableOperators.And, 
    TableQuery.GenerateFilterConditionForDate("Timestamp", QueryComparisons.GreaterThanOrEqual, DateTime.UtcNow.AddHours(-12))); 

combinedFilter = TableQuery.CombineFilters(
    combinedFilter, 
    TableOperators.And, 
    TableQuery.GenerateFilterCondition("FirstName", QueryComparisons.Equal, "value3")); 

TableQuery rangeQuery = new TableQuery().Where(combinedFilter); 
関連する問題