应该使用什么代替不推荐使用的EntityName.account.ToString()?

时间:2013-01-14 08:26:07

标签: dynamics-crm-2011 query-expressions

当我设计 QueryExpression 时,我总是使用以下硬编码语法。

QueryExpression expression = new QueryExpression
{
  EntityName = "account";
  ...
}

this blog中,使用了基于this enumeration的以下语法。

QueryExpression expression = new QueryExpression
{
  EntityName = EntityName.account.ToString();
  ...
}

我更喜欢它但我无法使用intellisense找到它。然后我发现了this discussion,其中解释了语法已被弃用。

那么,应该使用什么而不是 EntityName ?我用Google搜索了一下但找不到任何有用的东西。在我看来,在硬编码表达之前,某种枚举是首选。那是对的吗?如果是这样,如何在CRM 2011中做到这一点?

3 个答案:

答案 0 :(得分:3)

如果您使用early bound classes,则还可以对自定义实体使用以下语法。如果没有,这将适用于所有标准实体。

Account.EntityLogicalName

答案 1 :(得分:0)

如果您使用的是后期绑定实体,则可以使用Entity.LogicalName

答案 2 :(得分:0)

你可以写一下例如Contact.EntityLogicalName.ToString(),但在这种情况下你必须

使用早期绑定类