Partager via


Utiliser la classe QueryByAttribute

Vous pouvez utiliser la classe QueryByAttribute pour générer des requêtes qui testent un ensemble de colonnes (attributs) par rapport à un ensemble de valeurs. Utilisez cette classe avec la méthode RetrieveMultiple ou IOrganizationService.RetrieveMultipleRequest. .

Le tableau suivant répertorie les propriétés que vous pouvez définir pour créer une expression de requête à l’aide de la classe QueryByAttribute.

Propriété Description
EntityName Spécifie le type de table qui est récupéré. Une expression de requête peut uniquement récupérer une collection d’un seul type de table. Vous pouvez également transmettre cette valeur à l’aide du constructeur QueryExpression.
ColumnSet Spécifie l’ensemble des colonnes (attributs) à récupérer.
Attributes Spécifie l’ensemble des attributs sélectionnés dans la requête.
Values Spécifie les valeurs de colonne à rechercher lorsque la requête est exécutée.
Orders Spécifie l’ordre dans lequel les lignes sont renvoyées pour la requête.
PageInfo Spécifie le nombre de pages et le nombre de lignes affichés par page renvoyés pour la requête.

L’exemple de code suivant montre comment utiliser la classe QueryByAttribute.

//  Create query using querybyattribute      
QueryByAttribute querybyexpression = new QueryByAttribute("account");      
querybyexpression.ColumnSet = new ColumnSet("name", "address1_city", "emailaddress1");  
  
//  Attribute to query      
querybyexpression.Attributes.AddRange("address1_city");  
  
//  Value of queried attribute to return      
querybyexpression.Values.AddRange("Detroit");      
  
//  Query passed to the service proxy      
EntityCollection retrieved = _serviceProxy.RetrieveMultiple(querybyexpression);     
  
//  Iterate through returned collection      
foreach (var c in retrieved.Entities)      
{  
      System.Console.WriteLine("Name: " + c.Attributes["name"]);  
      System.Console.WriteLine("Address: " + c.Attributes["address1_city"]);        
      System.Console.WriteLine("E-mail: " + c.Attributes["emailaddress1"]);      
}  
  

Voir aussi

Générer des requêtes avec QueryExpression
QueryByAttribute

Notes

Pouvez-vous nous indiquer vos préférences de langue pour la documentation ? Répondez à un court questionnaire. (veuillez noter que ce questionnaire est en anglais)

Le questionnaire vous prendra environ sept minutes. Aucune donnée personnelle n’est collectée (déclaration de confidentialité).