Пример #1
0
        /// <summary>
        /// 建立一个Where嵌套查询
        /// </summary>
        public IDataTableSelector Where(Action <IDataTableSelector> nested, SelectorLinker linker = SelectorLinker.And)
        {
            DataTableSelector selector = NewSelector();

            nested(selector);
            return(NestedWhereSelector(selector, linker));
        }
Пример #2
0
 /// <summary>
 /// 增加一个嵌套查询
 /// </summary>
 /// <param name="selector">查询器</param>
 /// <param name="linker">链接符</param>
 /// <returns>查询器</returns>
 protected IDataTableSelector NestedWhereSelector(DataTableSelector selector, SelectorLinker linker)
 {
     wheres.Add(new DataTableSelectorData
     {
         SelectType = "Nested",
         Selector   = selector,
         Linker     = linker
     });
     return(this);
 }
Пример #3
0
 /// <summary>
 /// 是否为为 null 的查询
 /// </summary>
 /// <param name="field">嵌套查询</param>
 /// <param name="linker">链接符</param>
 /// <param name="negate">是否取反</param>
 protected IDataTableSelector WhereNull(string field, SelectorLinker linker = SelectorLinker.And, bool negate = false)
 {
     wheres.Add(new DataTableSelectorData
     {
         SelectType = negate ? "NotNull" : "Null",
         Field      = field,
         Linker     = linker
     });
     return(this);
 }
Пример #4
0
        /// <summary>
        /// 建立一个Where查询
        /// </summary>
        public IDataTableSelector Where(string field, string operators, string val, SelectorLinker linker = SelectorLinker.And)
        {
            GuardInvalidOperatorAndValue(operators, val);

            if (string.IsNullOrEmpty(val))
            {
                return(WhereNull(field, linker, operators != "="));
            }

            wheres.Add(new DataTableSelectorData()
            {
                SelectType = "Basic",
                Field      = field,
                Operator   = operators,
                Value      = val,
                Linker     = linker
            });

            return(this);
        }
Пример #5
0
		/// <summary>
		/// 建立一个Where嵌套查询
		/// </summary>
		public IDataTableSelector Where(Action<IDataTableSelector> nested, SelectorLinker linker = SelectorLinker.And){

			this.selector = new DataTableSelector(this);
			return this.selector.Where(nested , linker);

		}
Пример #6
0
		/// <summary>
		/// 建立一个Where查询
		/// </summary>
		public IDataTableSelector Where(string field, string operators, string val, SelectorLinker linker = SelectorLinker.And){

			this.selector = new DataTableSelector(this);
			return this.selector.Where(field , operators , val , linker);

		}