Verwenden von Nachrichten der ExecuteCrmOrganizationRequest-Methode
Die folgenden Codebeispiele demonstrieren, wie Sie mithilfe der ExecuteCrmOrganizationRequest-Methode Nachrichten ausführen können.
Anmerkung
Könntest du auch ServiceClient.ExecuteOrganizationRequest verwenden, um die gleichen Ergebnisse zu erzielen.
Lesen Sie die folgenden wichtigen Informationen zur Verwendung einer Verbindungszeichenfolge im Anwendungscode.
Wichtig
Microsoft empfiehlt, den sichersten verfügbaren Authentifizierungsflow zu verwenden. Der in diesem Artikel beschriebene Authentifizierungsablauf erfordert ein sehr hohes Maß an Vertrauen in die Anwendung und birgt Risiken, die in anderen Flows nicht vorhanden sind. Sie sollten diesen Flow nur verwenden, wenn andere, sicherere Flows, z. B. verwaltete Identitäten, nicht funktionsfähig sind.
Beispiel 1: CreateRequest-Nachricht
Das folgende Codebeispiel zeigt, wie Sie die CreateRequest-Nachricht mithilfe der Methode CrmServiceClient.ExecuteCrmOrganizationRequest ausführen. Erstellen Sie in diesem Beispiel eine Firma und zeigen Sie dann im Antwortobjekt die ID an.
CrmServiceClient svc = new CrmServiceClient(connectionstring);
// ServiceClient svc = new ServiceClient(connectionstring);
// Verify that you are connected.
if (svc != null && svc.IsReady)
{
var request = new CreateRequest();
var newAccount = new Entity("account");
newAccount.Attributes.Add("name", "Sample Test Account");
request.Target = newAccount;
var response = (CreateResponse)svc.ExecuteCrmOrganizationRequest(request);
// Display the ID of the newly created account record.
Console.WriteLine("Account record created with the following ID: {0}", response.id.ToString());
}
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;
}
Beispiel 2: RetrieveMultipleRequest
Das folgende Codebeispiel zeigt, wie Sie die RetrieveMultipleRequest-Nachricht mithilfe der Methode CrmServiceClient.ExecuteCrmOrganizationRequest ausführen. In diesem Beispiel führen Sie eine Mehrfachabrufanforderung aus, um alle Kontakte im System abzurufen und die vollständigen Namen anzuzeigen.
CrmServiceClient svc = new CrmServiceClient(connectionstring);
// ServiceClient svc = new ServiceClient(connectionstring);
// Verify that you are connected.
if (svc != null && svc.IsReady)
{
var userSettingsQuery = new QueryExpression("contact");
userSettingsQuery.ColumnSet.AllColumns = true;
var retrieveRequest = new RetrieveMultipleRequest()
{
Query = userSettingsQuery
};
EntityCollection EntCol = (svc.ExecuteCrmOrganizationRequest(retrieveRequest) as RetrieveMultipleResponse).EntityCollection;
foreach (var a in EntCol.Entities)
{
Console.WriteLine("Account name: {0} {1}", a.Attributes["firstname"], a.Attributes["lastname"]);
}
}
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;
}
Siehe auch
Verwenden von XRM-Tools, um eine Verbindung zu Microsoft Dataverse herzustellen
XRM Tooling API zur Ausführung von Aktionen in Dataverse verwenden