背景
我有一个自定义 C# 插件,它不允许为特定角色激活/停用某些实体。我使用RetrieveEntityRequest
来获取插件正在执行的实体的 EntityMetadata,并查找DisplayCollectionName.LocalizedLabels.First().Label
以获取实体的显示名称,并在错误消息中将其显示给用户:
拒绝访问您无权访问“我的自定义实体”
调用RetreieveEntityRequest
被包装在一个吃掉任何异常的try catch 中,而是显示逻辑名称(即new_mycustomentity)。
问题
当对实体或关系没有读取权限的用户执行插件时,将显示逻辑名称(由于用户没有权限)。
如何显示实体的显示名称,同时保持插件注册为“在调用用户的上下文中运行”并且不授予用户对实体和关系的读取权限?