/// <summary>
        /// Возвращает копию коллеции параметров с указанным HandlingMode
        /// </summary>
        /// <param name="parameters"></param>
        /// <param name="mode"></param>
        /// <returns></returns>
        public static CustomParamsCollection <IRuleCheckParameter> SetModeParam(this CustomParamsCollection <IRuleCheckParameter> parameters, HandlingMode mode)
        {
            //если существует, копируем элементы, иначе - создаем коллекцию
            var list = (parameters != null) ? new CustomParamsCollection <IRuleCheckParameter>(parameters) : new CustomParamsCollection <IRuleCheckParameter>();

            //находим необходимый элемент

            if (parameters.FirstOrDefault(c => c is WorshipRuleCheckModeParameter) is WorshipRuleCheckModeParameter param)
            {
                list.Remove(param);
            }

            param = new WorshipRuleCheckModeParameter()
            {
                Mode = mode
            };
            list.Add(param);

            return(list);
        }
        public static HandlingMode GetMode(this CustomParamsCollection <IRuleCheckParameter> parameters)
        {
            WorshipRuleCheckModeParameter param = parameters?.FirstOrDefault(c => c is WorshipRuleCheckModeParameter) as WorshipRuleCheckModeParameter;

            return((param != null) ? param.Mode : HandlingMode.All);
        }