Example #1
0
        /// <summary>
        ///  创建现在SQL语句生成器
        /// </summary>
        /// <param name="obj"></param>
        /// <param name="mapping"></param>
        /// <returns></returns>
        protected virtual InsertSqlClauseBuilder PrepareInsertSqlBuilder(DEEntityInstanceBase obj)
        {
            InsertSqlClauseBuilder builder = new InsertSqlClauseBuilder();

            foreach (var filed in obj.Fields)
            {
                if (filed.Definition.IsInSnapshot)
                {
                    builder.AppendItem(filed.Definition.Name, filed.GetRealValue());
                }
            }
            if (!builder.ContainsDataField("ID"))
            {
                builder.AppendItem("ID", obj.ID);
            }
            if (!builder.ContainsDataField("CreateTime"))
            {
                builder.AppendItem("CreateTime", obj.CreateDate);
            }
            if (!builder.ContainsDataField("CreatorID"))
            {
                builder.AppendItem("CreatorID", obj.Creator.ID);
            }
            if (!builder.ContainsDataField("CreatorName"))
            {
                builder.AppendItem("CreatorName", obj.Creator.Name);
            }
            return(builder);
        }