/// <summary>
 /// 在当前位置添加一个部分查询
 /// </summary>
 /// <param name="partial">要添加的部分查询对象</param>
 public void AppendPartial(IParameterizedQueryPartial partial)
 {
     lock ( _sync )
     {
         partial.AppendTo(this);
     }
 }
Esempio n. 2
0
        /// <summary>
        /// 将 IParameterizedQueryPartial 对象转换为 ParameterizedQuery 对象
        /// </summary>
        /// <param name="partial">要转换的 IParameterizedQueryPartial 对象</param>
        /// <param name="configures">要使用的查询配置对象</param>
        /// <returns></returns>
        public static ParameterizedQuery AsQuery(this IParameterizedQueryPartial partial, DbQueryConfigures configures = null)
        {
            var builder = ParameterizedQueryService.CreateQueryBuild();

            builder.AppendPartial(partial);
            return(builder.BuildQuery(configures ?? new DbQueryConfigures()));
        }
Esempio n. 3
0
        /// <summary>
        /// 在当前位置添加一个部分查询
        /// </summary>
        /// <param name="partial">要添加的部分查询对象</param>
        protected virtual void AppendPartial(IParameterizedQueryPartial partial)
        {
            lock ( SyncRoot )
            {
                if (textBuilder.Length > 0
                    //&& Db.DbContext.AutoWhitespaceSeparator == true
                    && char.IsWhiteSpace(textBuilder[textBuilder.Length - 1]) == false &&
                    (partial as ParameterizedQuery)?.IsStartWithWhiteSpace() == false)
                {
                    Append(' ');
                }

                partial.AppendTo(this);
            }
        }
Esempio n. 4
0
 /// <summary>
 /// 添加一个参数化查询部分组件
 /// </summary>
 /// <param name="builder">参数化查询构建器</param>
 /// <param name="partial">参数化查询部分组件</param>
 /// <remarks>此扩展方法与直接调用 AppendValue 效果相同,但是具有强类型约束,建议使用此方法明确添加部分组件</remarks>
 public static void AppendPartial(this IParameterizedQueryBuilder builder, IParameterizedQueryPartial partial)
 {
     builder.AppendValue(partial);
 }
    /// <summary>
    /// 在当前位置添加一个部分查询
    /// </summary>
    /// <param name="partial">要添加的部分查询对象</param>
    public void AppendPartial( IParameterizedQueryPartial partial )
    {
      lock ( _sync )
      {
        partial.AppendTo( this );
      }

    }