Exemplo n.º 1
0
        static string ParamToSql(SqlParamItem param, ParamMode mode)
        {
            switch (mode)
            {
            case ParamMode.EntityFramework:
                return($"@{param.ParamName}");

            case ParamMode.Substitute:
                return(SqlConst.ConstToSql(param.GetValue()));

            default:
                throw new ArgumentException("No se pueden usar parametros con el param mode 'None'");
            }
        }
Exemplo n.º 2
0
        /// <summary>
        /// Agrega un parametro y devuelve el número del mismo, si ya existe devuelve el numero del parámetro existente
        /// </summary>
        public SqlParamItem AddParam(object target, IReadOnlyList <MemberInfo> path)
        {
            var it = Items.FirstOrDefault(x =>
                                          x.Target == target &&
                                          x.Path.SequenceEqual(path, CompareExpr.CompareMemberInfo)
                                          );

            if (it == null)
            {
                var name = GetNewName(path.Last().Name, null);
                it = new SqlParamItem(target, path, name, Items.Count);
                Items.Add(it);
            }
            return(it);
        }