/// <summary> /// /// </summary> /// <param name="propertyName"></param> /// <param name="isAnyOff"></param> /// <param name="values"></param> public ConditionalAttribute(string propertyName, IsAnyOf isAnyOf, params object[] values) { Conditions = new Condition[values.Length]; switch (isAnyOf) { case IsAnyOf.Yes: for (int i = 0; i < Conditions.Length; i++) { Conditions[i] = new Condition(propertyName, Operator.Equals, values[i], Logical.Or); } break; case IsAnyOf.No: for (int i = 0; i < Conditions.Length; i++) { Conditions[i] = new Condition(propertyName, Operator.NotEquals, values[i], Logical.And); } break; } }
public ConditionalAttribute(string propertyName, IsAnyOf ctype, params object[] values) { conditions = new Where[values.Length]; switch (ctype) { case IsAnyOf.Yes: for (var i = 0; i < conditions.Length; i++) { conditions[i] = new Where(propertyName, Comparison.Equals, values[i], Logical.OR); } break; case IsAnyOf.No: for (var i = 0; i < conditions.Length; i++) { conditions[i] = new Where(propertyName, Comparison.NotEqualTo, values[i], Logical.AND); } break; } }