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);
 }
Example #2
0
 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));
        }