[英]Getting related entities from intersect entity D365 C#
我檢索了一個相交實體和與之相關的兩個實體。
我已經將實體鏈接到查詢(我的信念)。
當我運行代碼時,所有相交實體都會出現,但我無法弄清楚如何從中獲取任何數據,甚至是名稱的名稱。
請看下面的代碼:.
private static EntityCollection GetOpportunityAndInstallationSiteIntersectEntity(IOrganizationService service)
var installationSite = "csp_installationsite";
var opportunity = "opportunity";
var relationshipName = "csp_opportunity_csp_installationsite";
var relationshipQuery = new QueryExpression(installationSite)
{
ColumnSet = new ColumnSet(true)
};
var linkInstallationSite = new LinkEntity(installationSite, relationshipName, "csp_installationsiteid","csp_installationsiteid" ,JoinOperator.Inner);
var linkOpportunity = new LinkEntity(opportunity, relationshipName, "opportunityid", "opportunityid" ,JoinOperator.Inner);
linkInstallationSite.LinkEntities.Add(linkOpportunity);
relationshipQuery.LinkEntities.Add(linkInstallationSite);
var RelationshipCollection = service.RetrieveMultiple(relationshipQuery);
Console.WriteLine("Retrieved {0} Intersect Entities", RelationshipCollection.Entities.Count);
foreach (Entity IS in RelationshipCollection.Entities)
{
Console.WriteLine("Intersect Entity:", IS["csp_name"]);
}
return RelationshipCollection;
I'd just like to know how I can get the records related to the intersect.
Lets call an entity A, I want to deprecate it, but it's related to Entity B in a N:N relationship.
I've created a new entity, which is related to entity A in PowerAutomate.
我希望所有實體 B 現在都與我在 PowerAutomate 中創建的這個實體相關。
任何幫助表示贊賞。
當我運行您的代碼時,我可以訪問安裝站點屬性,我只是稍微修改它以從機會中獲取所有屬性。
下面的代碼循環訪問機會和安裝站點的名稱屬性。
private static EntityCollection GetOpportunityAndInstallationSiteIntersectEntity(IOrganizationService service)
{
var installationSite = "csp_installationsite";
var opportunity = "opportunity";
var relationshipName = "csp_opportunity_csp_installationsite";
var relationshipQuery = new QueryExpression(installationSite)
{
ColumnSet = new ColumnSet(true)
};
var linkInstallationSite = relationshipQuery.AddLink(relationshipName, "csp_installationsiteid", "csp_installationsiteid", JoinOperator.Inner);
var linkOpportunity = linkInstallationSite.AddLink(opportunity, "opportunityid", "opportunityid", JoinOperator.Inner);
linkOpportunity.EntityAlias = "opp";
linkOpportunity.Columns.AllColumns = true;
var RelationshipCollection = service.RetrieveMultiple(relationshipQuery);
foreach (Entity IS in RelationshipCollection.Entities)
{
Console.WriteLine($"Intersect Entity: {IS["csp_name"]} {((AliasedValue)IS["opp.name"]).Value}");
}
return RelationshipCollection;
}
從那里您需要將記錄關聯到新實體並分離舊實體
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.