Exemplo n.º 1
0
        public void Values(Dictionary <string, object> columns)
        {
            if (columns == null || columns.Count == 0)
            {
                throw new ArgumentNullException(nameof(columns));
            }

            foreach (var kv in columns)
            {
                var paramName = _parameterManager.GenerateName();
                _parameterManager.Add(paramName, kv.Value, Datas.Queries.Operator.Equal);
                _columns.Add(kv.Key, paramName);
            }
        }
Exemplo n.º 2
0
        /// <summary>
        /// 创建In条件
        /// </summary>
        private ICondition CreateInCondition(string column, IEnumerable values)
        {
            if (values == null)
            {
                return(NullCondition.Instance);
            }
            var paramNames = new List <string>();

            foreach (var value in values)
            {
                var name = _parameterManager.GenerateName();
                paramNames.Add(name);
                _parameterManager.Add(name, value);
            }
            return(new InCondition(column, paramNames));
        }
Exemplo n.º 3
0
        /// <summary>
        /// 获取列
        /// </summary>
        private SqlItem GetColumn(Expression expression, bool right)
        {
            var type   = _resolver.GetType(expression, right);
            var column = _resolver.GetColumn(expression, type, right);

            if (string.IsNullOrWhiteSpace(column))
            {
                var name = _parameterManager.GenerateName();
                _parameterManager.Add(name, Lambda.GetValue(expression));
                return(new SqlItem(name, raw: true));
            }
            return(new SqlItem(GetColumn(type, column)));
        }