2017-03-20 85 views
0

我需要一種方法來知道最有效的方式,看是否在Azure存儲表中有任何數據檢查AzureTable是否有任何數據的最簡單有效的方法?

爲例

cloudTable.ExecuteQuery(「我該怎麼辦」);

感謝您的建議!我終於做了這樣的事情:

var query = new TableQuery<T>() 
      { 
       TakeCount = 1, 
       SelectColumns = new List<string>() 
       { 
        "PartitionKey" 
       } 
      }; 
var table = await this.GetTableAsync(); 
var segment = await table.ExecuteQuerySegmentedAsync(query, null); 

return segment.Results.Any(); 
+1

的[文檔TableQuery.Where](https://msdn.microsoft.com/en-us/library/microsoft.windowsazure.storage.table.tablequery.where.aspx)說_「設置過濾器表達式是可選的;默認情況下,如果在表查詢中未指定過濾器表達式,則表中的所有實體都將返回。「_ - 這是否是最有效的方式取決於它在Azure中的實現方式。這是爲了解決什麼問題? – stuartd

+0

該表可以是空的以及包含數十萬個條目。我需要它快速 – CodeName

+1

採取(1)? https://msdn.microsoft.com/en-us/library/microsoft.windowsazure.storage.table.tablequery.take.aspx –

回答

2

你可以做到這一點,如果有數據限制你的查詢1條記錄。

// select value = take smallest data field to avoid returning everything for a record 
var query = new TableQuery().Select(new List<string>(){"smallcolumn"}).Take(1); 
+2

此問題涉及到Azure,而不是實體框架。 – stuartd

+0

@stuartd - 謝謝。我更新了我的答案。 – Igor

相關問題