我发现在我的一些代码中,我有以下语法来保护来自FUBARing的插件。我不能为了上帝的爱而不记得为什么我将 EntityReference 的条件视为条件。
是 Context.InputParameters ["目标"] 每个 EntityReference ?
bool goodToGo
= Context.InputParameters.Contains("Target")
&& Context.PrimaryEntityName == "email";
&& (
Context.InputParameters["Target"] is Entity
|| Context.InputParameters["Target"] is EntityReference);
实体以外
答案 0 :(得分:10)
目标也可以是来自MSDN的EntityReference:
请注意,并非所有请求都包含Entity类型的Target属性,因此您必须查看每个单独的请求或响应。例如,DeleteRequest确实具有Target属性,但其类型为EntityReference。
Understand the Data Context Passed to a Plug-In
因此,根据插件的逻辑,您可能还需要检查 EntityReference 的属性类型。