C#中的Microsoft CRM QueryExpression

时间:2015-11-04 05:00:25

标签: c# dynamics-crm-2011 query-expressions

我的代码如下:

QueryExpression query = new QueryExpression();
            query.EntityName = "new_callistyorder"; 
            ColumnSet col = new ColumnSet("new_nomororder","new_customer");
            query.ColumnSet = col;

            EntityCollection colect = service.RetrieveMultiple(query);

            string str = string.Empty;
            foreach (Entity e in colect.Entities)
            {
                if(e.Contains("new_nomororder")){
                str = str + e.Attributes["new_nomororder"].ToString();
                }
            }
            throw new InvalidPluginExecutionException(str);

通过此代码。我能够从microsoft动态实体获取数据。 现在,我想获得id最大的数据。 如果在SQL Query中,它看起来像这样:“通过my_id desc从帐户顺序中选择前1个my_id”。 我如何在queryexpression上做到这一点? 感谢

1 个答案:

答案 0 :(得分:1)

您可以使用以下命令添加订单:

query.AddOrder("my_id", OrderType.Descending);

然后获取第一个元素。

var entityCollection = service.RetrieveMultiple(query);
if(entityCollection.Entities.Count<1)
{
    //perform some logic
}