CRM 2011の操作前の更新プラグインで関連するレコードを更新しようとしています。単純なクエリは、2つのパラメータに基づいて関連するエンティティのセットを取得し、結果のクエリからの各エンティティは、関連するエンティティセットにルックアップされます。ただし、発生時にInvalidCastExceptionを示唆する例外がスローされます。コードを踏んでいくうちに、それぞれの値が正しいと思われ、期待どおりのGuidesが表示されます。他のプラグインを無効にしていますが、ターゲットや関連するエンティティが関わっている可能性があります。 targetEntityとrelatedEntityの関係は1:Nです。私は、この問題は、ステップインしながらGuidではなくEntityReferenceを期待しているためではないことを確認しました。CRM 2011操作前の更新関連のエンティティの参照フィールド
プラグインのコードでは、私はより多くの明白なプロキシ(それは、開発者ツールキットのプラグインクラスファイルを使用しています)のために、実際のエンティティ/属性名を置換している場合は、以下の通りです: - 任意の助けをいただければ幸いです
Entity targetEntity = (Entity)localContext.PluginExecutionContext.InputParameters["Target"];
QueryExpression query = new QueryExpression
{
EntityName = "relatedEntity",
Criteria =
{
Conditions =
{
new ConditionExpression("testOptionSetAttribute", ConditionOperator.Equal, 100000004),
new ConditionExpression("parentEntityId", ConditionOperator.Null)
}
}
};
EntityCollection resultsCollection = localContext.OrganizationService.RetrieveMultiple(query);
foreach (Entity result in resultsCollection.Entities)
{
result.Attributes["parentEntityId"] = targetEntity.Id;
localContext.OrganizationService.Update(result);
}
。
ありがとうございました。
をtargetEntity'が本当にある '場合は1:N' relatedEntity'、その後、 'result.Attributes [ "parentEntityId"]との関係' '間違いなくEntityReference'にする必要があり、 'Guid'だけではありません。 –