public static void CheckArgumentCount (MethodCallExpression methodCallExpression, params int[] allowedArgumentCounts)
{
ArgumentUtility.CheckNotNull ("methodCallExpression", methodCallExpression);
ArgumentUtility.CheckNotNull ("allowedArgumentCounts", allowedArgumentCounts);
if (!allowedArgumentCounts.Contains (methodCallExpression.Arguments.Count))
{
var message = string.Format (
"{0} function with {1} arguments is not supported. Expression: '{2}'",
methodCallExpression.Method.Name,
methodCallExpression.Arguments.Count,
FormattingExpressionTreeVisitor.Format (methodCallExpression));
throw new NotSupportedException (
message);
}
}