gpt4 book ai didi

linq - 如何使用 LINQ 和连接检索 CRM Guid?

转载 作者:行者123 更新时间:2023-12-01 06:19:23 25 4
gpt4 key购买 nike

我们正在使用 CRM 2011。我们与产品的实体引用签订了契约(Contract),并且每个产品都有对主题的实体引用。给定一个契约(Contract)指南,我需要检索主题指南。

我是 LINQ 的初学者,但我编写过代码:

 var subject = from s in context.SubjectSet
join product in context.ProductSet
on s.Id equals product.SubjectId.Id
join contract in context.ContractSet
on product.Id equals contract.ce_ProductId.Id
where contract.Id == gContractId
select s;

foreach (var s in subject)
{
newReportableAction.ce_SupergroupRegarding =
new EntityReference(Xrm.Subject.EntityLogicalName, new Guid(s.Id.ToString()));
}

这会引发错误:

AttributeFrom 和 AttributeTo 必须同时指定或同时省略。你不能只通过一个或另一个。 AttributeFrom: , AttributeTo: ce_ProductId

这个错误是什么意思?
如何获取指南?

更新:

我尝试将查询分成几部分以查看错误是从哪里产生的,所以我有:

var query = from product in context.ProductSet
join contract in context.ContractSet
on product.Id equals contract.ce_ProductId.Id

这给出了:

"join 子句中的表达式类型不正确。调用 'Join' 时类型推断失败"

感谢所有帮助...

最佳答案

我认为您不能在 Linq 语句中直接使用实体的 .Id 属性。试试这个:

var query = from product in context.ProductSet
join contract in context.ContractSet
on product.ProductId equals contract.ce_ProductId.Id

注意 product.ProductId 而不是 product.Id

关于linq - 如何使用 LINQ 和连接检索 CRM Guid?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23373931/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com