示例#1
0
        /// <summary>
        /// 设置插入数据的命令
        /// </summary>
        /// <param name="entity">实体对象</param>
        /// <param name="cmd">命令</param>
        /// <returns>返回真说明要取主键</returns>
        private void CreateFullSqlParameter(PageDataData entity, MySqlCommand cmd)
        {
            //01:标识(ID)
            cmd.Parameters.Add(new MySqlParameter("ID", MySqlDbType.Int32)
            {
                Value = entity.ID
            });
            //02:用户标识(UserId)
            cmd.Parameters.Add(new MySqlParameter("UserId", MySqlDbType.Int32)
            {
                Value = entity.UserId
            });
            //03:页面标识(PageId)
            cmd.Parameters.Add(new MySqlParameter("PageId", MySqlDbType.Int32)
            {
                Value = entity.PageId
            });
            //04:页面数据(PageData)
            var isNull    = string.IsNullOrWhiteSpace(entity.PageData);
            var parameter = new MySqlParameter("PageData", MySqlDbType.VarChar, isNull ? 10 : (entity.PageData).Length);

            if (isNull)
            {
                parameter.Value = DBNull.Value;
            }
            else
            {
                parameter.Value = entity.PageData;
            }
            cmd.Parameters.Add(parameter);
        }
示例#2
0
        /// <summary>
        /// 取得仅更新的SQL语句
        /// </summary>
        internal string GetModifiedSqlCode(PageDataData data)
        {
            if (data.__EntityStatusNull || !data.__EntityStatus.IsModified)
            {
                return(";");
            }
            StringBuilder sql = new StringBuilder();

            sql.AppendLine("UPDATE [ST_PageData] SET");
            //用户标识
            if (data.__EntityStatus.ModifiedProperties[PageDataData.Real_UserId] > 0)
            {
                sql.AppendLine("       [UserId] = @UserId");
            }
            //页面标识
            if (data.__EntityStatus.ModifiedProperties[PageDataData.Real_PageId] > 0)
            {
                sql.AppendLine("       [PageId] = @PageId");
            }
            //页面数据
            if (data.__EntityStatus.ModifiedProperties[PageDataData.Real_PageData] > 0)
            {
                sql.AppendLine("       [PageData] = @PageData");
            }
            sql.Append(" WHERE [ID] = @ID;");
            return(sql.ToString());
        }
示例#3
0
 /// <summary>
 /// 载入数据
 /// </summary>
 /// <param name="reader">数据读取器</param>
 /// <param name="entity">读取数据的实体</param>
 protected sealed override void LoadEntity(MySqlDataReader reader, PageDataData entity)
 {
     using (new EditScope(entity.__EntityStatus, EditArrestMode.All, false))
     {
         entity._id     = (int)reader.GetInt32(0);
         entity._userid = (int)reader.GetInt32(1);
         entity._pageid = (int)reader.GetInt32(2);
         if (!reader.IsDBNull(3))
         {
             entity._pagedata = reader.GetString(3);
         }
     }
 }
示例#4
0
 /// <summary>
 /// 设置插入数据的命令
 /// </summary>
 /// <param name="entity">实体对象</param>
 /// <param name="cmd">命令</param>
 /// <returns>返回真说明要取主键</returns>
 protected sealed override bool SetInsertCommand(PageDataData entity, MySqlCommand cmd)
 {
     cmd.CommandText = InsertSqlCode;
     CreateFullSqlParameter(entity, cmd);
     return(true);
 }
示例#5
0
 /// <summary>
 /// 设置更新数据的命令
 /// </summary>
 /// <param name="entity">实体对象</param>
 /// <param name="cmd">命令</param>
 protected sealed override void SetUpdateCommand(PageDataData entity, MySqlCommand cmd)
 {
     cmd.CommandText = UpdateSqlCode;
     CreateFullSqlParameter(entity, cmd);
 }