Comment interroger toutes les lignes dans windows azure table storage?
Je suis en train d'essayer d'obtenir une liste de toutes les entités à l'intérieur de mon azure table.
Une idée de comment je pourrais aller sur l'écriture de cette requête?
Je suis à l'aide de c# btw. Merci.
- Êtes-vous à l'aide de n'importe quelle langue spécifique de la bibliothèque par exemple .Net Client de Stockage de la bibliothèque?
- Je suis à l'aide de Microsoft.WindowsAzure.De stockage de la bibliothèque
Vous devez vous connecter pour publier un commentaire.
Pour répondre à votre question, vous pourriez faire quelque chose comme ce qui suit:
Mais s'il vous plaît gardez à l'esprit que le service à table renvoie un maximum de 1000 entités en un seul appel à elle. S'il n'y a plus de 1000 entités disponibles dans votre tableau, il renvoie une
continuation token
qui peut être utilisé pour récupérer le prochain ensemble d'entités. LeExecuteQuery
méthode gère en fait ce jeton de continuation en interne donc si vous voulez annuler cette opération pour une raison quelconque, vous ne pouvez pas le faire.Une meilleure approche serait d'utiliser
ExecuteQuerySegmented
méthode et votre application à traiter avec le jeton. Voici l'exemple de code pour le faire:http
. J'ai corrigé le code. Merci pour le porter à mon attention.Éventuellement, un moyen plus efficace de paresseusement la récupération des éléments du tableau est: est-ce
Si l'appelant est une boucle dans le résultat de
GetAll
et de trouver ce qu'ils cherchaient, ils pourraient toutbreak
la boucle, et leGetAll
méthode d'arrêter la récupération de prochains articles. Ce serait peut-être plus efficace, même si cela ne ferait pas beaucoup de différence si vous avez vraiment eu de récupérer tous les éléments.Si à l'aide de C# 8.0, vous pouvez rendement à l'intérieur de méthodes asynchrones: