我想过滤从D365中RetrieveAll收到的结果QueryExpression
这是代码片段:
private static List<IGrouping<string, Entity>> RetrieveDuplicates(IOrganizationService _crmService, DuplicateSearch duplicateSearch)
{
QueryExpression query = GenerateQueryExpression(duplicateSearch.EntityLogicalName, duplicateSearch.DuplicatedColumnName, duplicateSearch.ColumnList.ToArray());
Console.WriteLine("\n INFO: Finding duplicates is in progress ... \n");
var results = _crmService.RetrieveAll(query)
.OrderBy(e => e.GetAttributeValue<string>(duplicateSearch.DuplicatedColumnName))
.ThenByDescending(e => e.GetAttributeValue<DateTime>("createdon"))
.GroupBy(e => e.GetAttributeValue<string>(duplicateSearch.DuplicatedColumnName), e => e).ToList();
WriteDuplicateRecordsInFile(results, duplicateSearch.EntityLogicalName);
return results;
}
我想通过duplicateSearch.DuplicatedColumnName但List<string>不知道如何设置它GroupBy。
但是现在,根据要求,我想要GroupBy多个键,但不知道该怎么做。
让我知道是否需要任何其他信息。
注意:我想在这里使用用户选择的动态属性。