Share via


Utiliser les outils XRM pour récupérer des données

Il existe de nombreuses méthodes disponibles dans les classes CrmServiceClient et ServiceClient pour récupérer les données dans Microsoft Dataverse. Les exemples suivants expliquent comment récupérer un enregistrement par ID ou requête FetchXML.

GetEntityDataById

Cette méthode recherche une table par l’ID spécifié. Dans cet exemple, nous spécifions null pour la valeur de la liste de champs pour extraire toutes les colonnes de l’enregistrement de table spécifié (compte), puis nous affichons le nom de l’enregistrement de compte récupéré.

Lors de l’utilisation de la classe ServiceClient, vous pouvez trouver la méthode Get ici : QueryExtensions.GetEntityDataById

CrmServiceClient svc = new CrmServiceClient(connectionstring); 
// ServiceClient svc = new ServiceClient(connectionstring); 
  
// Verify that you are connected.  
if (svc != null && svc.IsReady)  
{  
    Dictionary<string, object> data = svc.GetEntityDataById("account", <Account_ID>, null);  
    foreach (var pair in data)  
    {  
        if (pair.Key == "name")  
        {  
            Console.WriteLine("Name of the account is {0}", pair.Value);  
        }  
    }  
}  
else  
{  
    // Display the last error.  
    Console.WriteLine("An error occurred: {0}", svc.LastCrmError);  
  
    // Display the last exception message if any.  
    Console.WriteLine(svc.LastCrmException.Message);  
    Console.WriteLine(svc.LastCrmException.Source);  
    Console.WriteLine(svc.LastCrmException.StackTrace);  
  
    return;  
}  
  

GetEntityDataByFetchSearchEC

Cette méthode recherche la table en fonction de la requête FetchXML spécifiée. Dans cet exemple, nous affichons et récupérons le nombre des enregistrements de compte dans le système.

Lors de l’utilisation de la classe ServiceClient, la méthode Get se trouve ici : QueryExtensions.GetEntityDataByFetchSearch

CrmServiceClient svc = new CrmServiceClient(connectionstring);
// ServiceClient svc = new ServiceClient(connectionstring);  
  
// Verify that you are connected.  
if (svc != null && svc.IsReady)  
{   
    string fetchXML =   
        @"<fetch version='1.0' output-format='xml-platform' mapping='logical' distinct='false' returntotalrecordcount='true' >  
            <entity name='account'>  
              <attribute name='accountid' />  
            </entity>  
        </fetch>";  
    var queryResult = crmSvc.GetEntityDataByFetchSearchEC(fetchXML);  
    if (queryResult != null)  
    {  
        Console.WriteLine(String.Format("Account Records Count : {0}", queryResult.TotalRecordCount));  
    }  
}  
else  
{  
    // Display the last error.  
    Console.WriteLine("An error occurred: {0}", svc.LastCrmError);  
  
    // Display the last exception message if any.  
    Console.WriteLine(svc.LastCrmException.Message);  
    Console.WriteLine(svc.LastCrmException.Source);  
    Console.WriteLine(svc.LastCrmException.StackTrace);  
  
    return;  
}  

Voir aussi

Utiliser les outils XRM pour se connecter à Dataverse
Utiliser l’API des outils XRM pour exécuter des actions dans Dataverse

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é).