当用户尚未填充目标实体时,是否有方法在操作前阶段访问该实体的空字段?
简短的答案是否定的。
目标只包含其值已更改或删除的属性
图像仅包含在插件注册工具中选择的属性。但它们仍然不包含具有NULL值的属性
如果你告诉我们更多关于你的发展,也许我们可以提出其他建议。
您可以通过Entity.Contains()
和Entity.GetAttributeValue<T>()
访问字段。如果字段尚未填充,则Entity.Contains()
将返回false
,Entity.GetAttributeValue<T>()
将返回default(T)
。
示例:
// Entity.Contains(), use this to judge if entity contains a certains field.
if (targetEntity.Contains("yourfiledname"))
{
var field = targetEntity.GetAttributeValue<string>("yourfiledname");
if (string.IsNullOrEmpty(field))
{
// do your logic
}
}
// Entity.GetAttributeValue<T>() this return a T or default(T).
var optionsetField = targetEntity.GetAttributeValue<OptionSetValue>("someoptionsetfield");
if (optionsetField != null)
{
// do your logic
}