我正在运行以下LINQ查询,但是它抛出一个错误,说“无效”,其中'条件。实体成员正在调用无效的属性或方法。“
任何人都可以建议我为什么会这样。如果我从conn.Record2Id.LogicalName.Equals("account")
移除WHERE
,则会返回结果,但我可以在quick view
中看到LogicalName =帐户。
var connections = (from conn in context.CreateQuery<Connection>()
where (conn.Record1Id.Id.Equals(incidentId)
&& conn.Record2Id.LogicalName.Equals("account")
&& conn.StateCode == 0)
select conn).FirstOrDefault();
先谢谢
答案 0 :(得分:4)
CRM的LINQ翻译无法处理.Equals()
方法。
将其更改为conn.Record2Id.LogicalName == "account"
答案 1 :(得分:0)
试试这个:
var connections = (from conn in context.CreateQuery<Connection>()
where conn.Record1Id != null
&& conn.Record1Id.Id == incidentId
&& conn.Record2Id != null
&& conn.Record2Id.LogicalName == "account"
&& conn.StateCode.Value == 0
select conn).FirstOrDefault();
答案 2 :(得分:0)
有趣但是试试这个:)
var connections = (from conn in context.CreateQuery<Connection>()
where (conn.Record1Id == new EntityReference("account",incidentId)
&& conn.StateCode == 0)
select conn).FirstOrDefault();