我正在为Microsoft Dynamics CRM开发XRM插件。我希望能够仅使用XRM程序集引用而不使用CRM内核代码来实例化EntityMetadata类型的对象。我只能声明EntityMetadata类型的对象:
EntityMetadata entityMetadata;
使用CRM内核代码,EntityMetadata类型的对象可以像这样实例化:
EntityMetadata entityMetadata = MetadataCache.GetInstance(((PipelineExecutionContext)context).PlatformContext)
.GetEntity(entityName, NameMappingType.Logical);
我项目的限制要求我只使用XRM代码,并且我不允许引用任何更熟悉的Microsoft.Crm。*程序集。
答案 0 :(得分:0)
答案 1 :(得分:0)
感谢所有回复。这是一个概念证明。我们被要求从CRM内核中删除代码,并主要依赖于XRM程序集。以下是我们为EntityMetadata提出的方法:
DynamicMetadataCache metadata = MetadataCache.GetInstance(((PipelineExecutionContext)context).PlatformContext);
EntityMetadata entityMetadata = metadata.GetEntity(entity.LogicalName, NameMappingType.Logical);