Ich habe vermieden, mit fetchxml zu arbeiten, da ich nicht sicher war, wie die Ergebnisdaten nach dem Aufruf von crmService.Fetch (fetchXml) am besten gehandhabt werden können. In ein paar Situationen, habe ich eine XDocument mit LINQ verwendet, um die Daten aus dieser Datenstruktur, wie abzurufen:Wie gehen Sie mit den fetchxml-Ergebnisdaten um?
XDocument resultset = XDocument.Parse(_service.Fetch(fetchXml));
if (resultset.Root == null || !resultset.Root.Elements("result").Any())
{
return;
}
foreach (var displayItem in resultset.Root.Elements("result").Select(item => item.Element(displayAttributeName)).Distinct())
{
if (displayItem!= null && displayItem.Value != null)
{
dropDownList.Items.Add(displayItem.Value);
}
}
Was ist der beste Weg FetchXML Ergebnisdaten zu handhaben, so dass es leicht verwendet werden kann, . Anwendungen wie das Übergeben dieser Datensätze an ein ASP.NET-Datagrid wären sehr nützlich.
Ja, ich habe hauptsächlich RetrieveMultiple verwendet, aber in diesem Fall muss ich einige Attribute abrufen und einige Bedingungen basierend auf verbundenen Entitäten hinzufügen, die fetchXml mir erlauben wird, und das QueryExpression-Objekt wird nicht zulassen. –
Luke, bist du sicher?Das Abrufen durch QueryExpression bietet auch Möglichkeiten zum Definieren von Joins. – okutane
Ja, Sie können Joins definieren, aber ich bin ziemlich sicher, dass Sie keine Attribute von einer verbundenen Entität zurückgeben können. –