子供が0人の親エンティティ(どのようにしてCRM Linqを使用するのが望ましい)をどのように見つけることができますか?たとえば、連絡先が0のアカウントをすべて見つけるにはどうすればいいですか?CRM Linq子供が0人のすべての親を見つける
答えて
:ここ
はあなたを助けることができるリンクですコード私は列を制限していない、これはパフォーマンスを低下させ、必要な列だけを返す必要があります。
5000の以上のレコードのケースがあれば返却しようとしている、あなたはすべてのエンティティを見つけるために、ページングやループクエリを使用する必要があります、 これは、ここで見つけることができます:
https://msdn.microsoft.com/en-us/library/gg327917.aspx
しかし、あなたが特定されている場合は、あなたが次のコードを使用することができますLINQを使用したい:
public static IEnumerable<Account> FindAccountsWithNoContacts()
{
var contactRelationship = new Relationship("contact_customer_accounts");
foreach(var account in XrmContext.AccountSet)
{
XrmContext.LoadProperty(contactRelationship);
if(!account.RelatedEntities.ContainsKey(contactRelationship)
yield return account;
}
}
をLINQコードと私の問題は、すべてのenities、両方のアカウントと接触するエンティティということだろうですメモリにロードされます。大規模なエンティティセットでは、これによりOutOfMemoryException
が発生することがありますが、クエリ式のルートはクエリを実行するDynamicsサーバーに渡します。これにより、コードの実行が速くなるはずです。
合意されたクエリ式がより効率的なコードです。 – user3845056
あなたが探しているものは、外部結合に残っています。残念ながら、LINQを使用するCRMではこれが不可能です。ただし、クエリ式またはFetchXMLを使用して行うことができます。あなたは、私は、次のコードは、この中
var entityAlias = "con";
var query = new QueryExpression
{
EntityName = "account",
ColumnSet = new ColumnSet(true),
Criteria =
{
FilterOperator = LogicalOperator.And,
Conditions =
{
new ConditionExpression(entityAlias, "contactid",ConditionOperator.Null)
}
}
LinkEntities =
{
new LinkEntity
{
EntityAlias = entityAlias,
LinkFromEntityName = "account",
LinkFromAttributeName = "accountid",
LinkToEntityName = "contact",
LinkToAttributeName = "parentcustomerid",
Columns = new ColumnSet("parentcustomerid", "contactid"),
JoinOperator = JoinOperator.LeftOuter,
}
},
};
var response = service.RetrieveMultiple(query);
var accounts = response.Entities;
有用であろう推薦クエリ式のルートを、使用しようとしている場合は https://community.dynamics.com/crm/b/gonzaloruiz/archive/2014/02/23/all-about-outer-join-queries-in-crm-2011-and-crm-2013
あなたは100%正しいです私はLinq CRMに左外部結合がないので苦労しています。私は、linqがcrmソリューションを望んでいたが、フェッチが行うだろう。 THanks – user3845056
'Left Outer Join'は子どもを見つけるための唯一の方法ですが、他の' Linq APIs 'は助けませんか? –
@ user3845056あなたが私の答えに満足すれば、それを受け入れられた答えとしてマークしてください。ありがとう。 –
- 1. すべての子供も一致する親を見つける
- 2. ASTNodeのすべてのサブノード(子供と子供の子供)を見つける方法
- 3. 子供の親を見つける方法は?
- 4. XPATH空の子のみを持つすべての親ノードを見つける
- 5. LINQを使用して親オブジェクトのリスト内の子オブジェクトを見つける
- 6. Linq to xml:親を見つける?
- 7. Divの親と2人の子供、他の子供の1人の子供のIDを取得
- 8. MS SQL Serverの:子供のすべての親を持つビュー
- 9. 子供が親のためにグループ化されている人
- 10. 1人の子供がレールで破壊されたときに、親を介して親と関連するすべての子供を破壊する方法
- 11. 親のIDがXの子レルムオブジェクトをすべて見つけよX
- 12. 金曜日に生まれたすべての子供を見つける
- 13. Rails:同じ世代のすべての子供を見つけよう
- 14. すべてのマップ座標の隣人を見つける
- 15. 各親から1人の子供だけを選択してください。
- 16. 1つのレフを持つすべての子供を見つける1つのクエリ
- 17. ツリー内のノードのすべての親ノードを見つける
- 18. Elasticsearchからすべての親の子供を取得する
- 19. ステージ/親のすべての子供を取得する
- 20. 子供のユーザーが親(Canvas)をどれだけ知るべきですか?
- 21. 2人の親に1人の子供を追加するには?
- 22. プロローグですべての親戚を見つける
- 23. XMLを介したLINQ:トップレベルの親を見つける
- 24. 子供の属性に基づいて親のためのRailsクエリ(子供が存在し、すべての子どもを見ている場合)
- 25. Linqを使用して最も人気のあるものを見つける
- 26. 多くの子供のうち1人の子供だけが死んで残りはctrl + cを待つ
- 27. 2人の子供が配列から親を共有し、divを使ってそれを表示する親子関係の配列を並べ替える
- 28. 各親の子供のすべてを表示
- 29. firefoxとoperaの親divの幅は、子供がいても0です
- 30. 子供を選択し親データを指定するLinqラムダクエリ
あなたが求めているのは、かなりシンプルですが、少なくともいくつかのコード、いくつかのモデル、デザインを提供することに気をつけてください。 –
これは簡単な理由です。 – user3845056
これを理解するには、いくつかのコードを記入し、試したことを示してください。確かにスプーンの供給は期待できません。 –