Пример #1
0
        /// <summary>
        /// 克隆
        /// </summary>
        /// <returns>查询SQL副本</returns>
        public override object Clone()
        {
            var newObject = base.Clone() as SelectSqlStatement;

            if (SelectList != null)
            {
                newObject.SelectList = SelectList.Clone() as SelectFieldListStatement;
            }
            if (From != null)
            {
                newObject.From = From.Clone() as From;
            }
            if (JoinCondition != null)
            {
                newObject.JoinCondition = JoinCondition.Clone() as JoinConditionStatement;
            }
            if (OrderByCondition != null)
            {
                newObject.OrderByCondition = OrderByCondition.Clone() as ConditionStatement;
            }
            if (FilterCondition != null)
            {
                newObject.FilterCondition = FilterCondition.Clone() as FilterConditionStatement;
            }
            if (MainFromItem != null)
            {
                newObject.MainFromItem = MainFromItem.Clone() as FromItem;
            }

            newObject.AliasCount            = AliasCount;
            newObject.DictFieldAliasMapping = new Dictionary <string, string>();
            foreach (KeyValuePair <string, string> map in DictFieldAliasMapping)
            {
                newObject.DictFieldAliasMapping.Add(map.Key, map.Value);
            }

            return(newObject);
        }