public void Disjunction(Action <IHqlExpressionFactory> expression, params Action <IHqlExpressionFactory>[] otherExpressions) { var junction = HqlRestrictions.Disjunction(); foreach (var exp in Enumerable.Empty <Action <IHqlExpressionFactory> >().Union(new[] { expression }).Union(otherExpressions)) { exp(this); junction.Add(Criterion); } Criterion = junction; }