internal int IndexOf(string parameterName, int luckyIndex)
        {
            var normalizedParameterName = FbParameter.NormalizeParameterName(parameterName);

            if (luckyIndex != -1 && luckyIndex < _parameters.Count)
            {
                if (_parameters[luckyIndex].InternalParameterName.Equals(normalizedParameterName, StringComparison.CurrentCultureIgnoreCase))
                {
                    return(luckyIndex);
                }
            }
            return(_parameters.FindIndex(x => x.InternalParameterName.Equals(normalizedParameterName, StringComparison.CurrentCultureIgnoreCase)));
        }
        internal int IndexOf(string parameterName, int luckyIndex)
        {
            var isNonAsciiParameterName = FbParameter.IsNonAsciiParameterName(parameterName);
            var usedComparison          = isNonAsciiParameterName || HasParameterWithNonAsciiName
                                ? StringComparison.CurrentCultureIgnoreCase
                                : StringComparison.OrdinalIgnoreCase;
            var normalizedParameterName = FbParameter.NormalizeParameterName(parameterName);

            if (luckyIndex != -1 && luckyIndex < _parameters.Count)
            {
                if (_parameters[luckyIndex].InternalParameterName.Equals(normalizedParameterName, usedComparison))
                {
                    return(luckyIndex);
                }
            }

            return(_parameters.FindIndex(x => x.InternalParameterName.Equals(normalizedParameterName, usedComparison)));
        }