Exemple #1
0
        /// <summary>
        ///     得到可正确拼接的SQL条件语句(可能是没有)
        /// </summary>
        /// <param name="condition"></param>
        /// <returns></returns>
        private string ContitionSqlCode(string condition)
        {
            List <string> conditions = new List <string>();

            if (!_baseConditionInited)
            {
                InitBaseCondition();
                _baseConditionInited = true;
            }
            if (!string.IsNullOrEmpty(BaseCondition))
            {
                conditions.Add(BaseCondition);
            }
            if (!string.IsNullOrEmpty(condition))
            {
                conditions.Add(condition);
            }
            ContitionSqlCode(conditions);
            DataUpdateHandler.ContitionSqlCode <TData>(TableId, conditions);
            if (conditions.Count == 0)
            {
                return(null);
            }
            var code = new StringBuilder();

            bool isFirst = true;

            foreach (var con in conditions)
            {
                if (isFirst)
                {
                    isFirst = false;
                    code.Append("\nWHERE ");
                }
                else
                {
                    code.Append(" AND ");
                }
                code.Append($"({con})");
            }
            return(code.ToString());
        }