public bool Execute(Attributes.IfAttribute ifAttr, IPluginExecutionContext ctx) { if (ifAttr is Attributes.RelationshipAttribute r) { var rel = ctx.InputParameters["Relationship"] as Microsoft.Xrm.Sdk.Relationship; if (rel != null) { return(rel.SchemaName == r.SchemaName); } } return(false); }
public bool Execute(Attributes.IfAttribute ifAttr, IPluginExecutionContext ctx) { if (ifAttr is Attributes.Filter.NotNullAttribute nn) { if (nn.Attributes != null && nn.Attributes.Length > 0) { var target = ctx.InputParameters["Target"] as Entity; if (target != null) { foreach (var att in nn.Attributes.Select(r => r.ToLower())) { if (target.Attributes.ContainsKey(att) && target[att] != null) { return(true); } } } } } return(false); }
public static bool Evaluate(Attributes.IfAttribute attr, Microsoft.Xrm.Sdk.IPluginExecutionContext ctx) { var evaluator = MethodConditionEvaluater.GetCondition(attr.Type); return(evaluator.Execute(attr, ctx)); }