System.Linq.Expressions.Error.ElementInitializerMethodNoRefOutParam C# (CSharp) Method

ElementInitializerMethodNoRefOutParam() static private method

ArgumentException with message like "Parameter '{0}' of element initializer method '{1}' must not be a pass by reference parameter"
static private ElementInitializerMethodNoRefOutParam ( object p0, object p1, string paramName ) : Exception
p0 object
p1 object
paramName string
return System.Exception
        internal static Exception ElementInitializerMethodNoRefOutParam(object p0, object p1, string paramName)
        {
            return new ArgumentException(Strings.ElementInitializerMethodNoRefOutParam(p0, p1), paramName);
        }
        /// <summary>

Usage Example

Example #1
0
        private static void ValidateElementInitAddMethodInfo(MethodInfo addMethod)
        {
            ValidateMethodInfo(addMethod);
            var pis = addMethod.GetParameters();

            if (pis.Length == 0)
            {
                throw Error.ElementInitializerMethodWithZeroArgs();
            }
            if (!addMethod.Name.Equals("Add", StringComparison.OrdinalIgnoreCase))
            {
                throw Error.ElementInitializerMethodNotAdd();
            }
            if (addMethod.IsStatic)
            {
                throw Error.ElementInitializerMethodStatic();
            }
            foreach (var pi in pis)
            {
                if (pi.ParameterType.IsByRef)
                {
                    throw Error.ElementInitializerMethodNoRefOutParam(pi.Name, addMethod.Name);
                }
            }
        }
Error