/// <summary>
        /// 获取实体(异步方式)
        /// </summary>
        /// <param name="strWhere">参数化查询条件(例如: and Name = @Name )</param>
        /// <param name="dict">参数的名/值集合</param>
        /// <returns></returns>
        public virtual async Task <RemindItemEntity> GetEntityAsync(string strWhere, Dictionary <string, object> dict = null)
        {
            RemindItemEntity obj    = null;
            string           strSQL = "select top 1 * from RemindItem where 1=1 " + strWhere;

            using (NullableDataReader reader = await Task.Run(() => _DB.GetDataReader(strSQL, dict)))
            {
                if (reader.Read())
                {
                    obj = GetEntityFromrdr(reader);
                }
            }
            return(obj);
        }
 /// <summary>
 /// 把实体类转换成键/值对集合
 /// </summary>
 /// <param name="entity"></param>
 /// <param name="dict"></param>
 private static void GetParameters(RemindItemEntity entity, Dictionary <string, object> dict)
 {
     dict.Add("RemindID", entity.RemindID);
     dict.Add("Creater", entity.Creater);
     dict.Add("CreateTime", entity.CreateTime);
     dict.Add("RemindTime", entity.RemindTime);
     dict.Add("RelationType", entity.RelationType);
     dict.Add("RemindContent", entity.RemindContent);
     dict.Add("CorrelativeClient", entity.CorrelativeClient);
     dict.Add("CorrelativeContacter", entity.CorrelativeContacter);
     dict.Add("IsRemindByTips", entity.IsRemindByTips);
     dict.Add("IsRemindByEmail", entity.IsRemindByEmail);
     dict.Add("IsRemindBySms", entity.IsRemindBySms);
     dict.Add("IsFinish", entity.IsFinish);
 }
        /// <summary>
        /// 通过数据读取器生成实体类
        /// </summary>
        /// <param name="rdr"></param>
        /// <returns></returns>
        private static RemindItemEntity GetEntityFromrdr(NullableDataReader rdr)
        {
            RemindItemEntity info = new RemindItemEntity();

            info.RemindID             = rdr.GetInt32("RemindID");
            info.Creater              = rdr.GetString("Creater");
            info.CreateTime           = rdr.GetNullableDateTime("CreateTime");
            info.RemindTime           = rdr.GetNullableDateTime("RemindTime");
            info.RelationType         = rdr.GetString("RelationType");
            info.RemindContent        = rdr.GetString("RemindContent");
            info.CorrelativeClient    = rdr.GetInt32("CorrelativeClient");
            info.CorrelativeContacter = rdr.GetString("CorrelativeContacter");
            info.IsRemindByTips       = rdr.GetBoolean("IsRemindByTips");
            info.IsRemindByEmail      = rdr.GetBoolean("IsRemindByEmail");
            info.IsRemindBySms        = rdr.GetBoolean("IsRemindBySms");
            info.IsFinish             = rdr.GetBoolean("IsFinish");
            return(info);
        }
        /// <summary>
        /// 增加一条记录,返回新的ID号。需要有一个单一主键,并且开启有标识符属性(异步方式)
        /// </summary>
        /// <param name="entity">实体模型</param>
        /// <returns></returns>
        public virtual async Task <int> InsertAsync(RemindItemEntity entity)
        {
            if (entity.RemindID <= 0)
            {
                entity.RemindID = GetNewID();
            }
            Dictionary <string, object> dict = new Dictionary <string, object>();

            GetParameters(entity, dict);

            string strSQL = "insert into RemindItem (" +
                            "RemindID," +
                            "Creater," +
                            "CreateTime," +
                            "RemindTime," +
                            "RelationType," +
                            "RemindContent," +
                            "CorrelativeClient," +
                            "CorrelativeContacter," +
                            "IsRemindByTips," +
                            "IsRemindByEmail," +
                            "IsRemindBySms," +
                            "IsFinish) " +
                            "values(" +
                            "@RemindID," +
                            "@Creater," +
                            "@CreateTime," +
                            "@RemindTime," +
                            "@RelationType," +
                            "@RemindContent," +
                            "@CorrelativeClient," +
                            "@CorrelativeContacter," +
                            "@IsRemindByTips," +
                            "@IsRemindByEmail," +
                            "@IsRemindBySms," +
                            "@IsFinish)";

            if (await Task.Run(() => _DB.ExeSQLResult(strSQL, dict)))
            {
                return(DataConverter.CLng(entity.RemindID));
            }
            return(-1);
        }
        /// <summary>
        /// 增加一条记录
        /// </summary>
        /// <param name="entity">实体模型</param>
        /// <returns></returns>
        public virtual bool Add(RemindItemEntity entity)
        {
            if (entity.RemindID <= 0)
            {
                entity.RemindID = GetNewID();
            }
            Dictionary <string, object> dict = new Dictionary <string, object>();

            GetParameters(entity, dict);

            string strSQL = "insert into RemindItem (" +
                            "RemindID," +
                            "Creater," +
                            "CreateTime," +
                            "RemindTime," +
                            "RelationType," +
                            "RemindContent," +
                            "CorrelativeClient," +
                            "CorrelativeContacter," +
                            "IsRemindByTips," +
                            "IsRemindByEmail," +
                            "IsRemindBySms," +
                            "IsFinish) " +
                            "values(" +
                            "@RemindID," +
                            "@Creater," +
                            "@CreateTime," +
                            "@RemindTime," +
                            "@RelationType," +
                            "@RemindContent," +
                            "@CorrelativeClient," +
                            "@CorrelativeContacter," +
                            "@IsRemindByTips," +
                            "@IsRemindByEmail," +
                            "@IsRemindBySms," +
                            "@IsFinish)";

            return(_DB.ExeSQLResult(strSQL, dict));
        }
        /// <summary>
        /// 更新一条记录(异步方式)
        /// </summary>
        /// <param name="entity">实体模型</param>
        /// <returns></returns>
        public virtual async Task <bool> UpdateAsync(RemindItemEntity entity)
        {
            Dictionary <string, object> dict = new Dictionary <string, object>();

            GetParameters(entity, dict);
            string strSQL = "Update RemindItem SET " +
                            "Creater = @Creater," +
                            "CreateTime = @CreateTime," +
                            "RemindTime = @RemindTime," +
                            "RelationType = @RelationType," +
                            "RemindContent = @RemindContent," +
                            "CorrelativeClient = @CorrelativeClient," +
                            "CorrelativeContacter = @CorrelativeContacter," +
                            "IsRemindByTips = @IsRemindByTips," +
                            "IsRemindByEmail = @IsRemindByEmail," +
                            "IsRemindBySms = @IsRemindBySms," +
                            "IsFinish = @IsFinish" +
                            " WHERE " +

                            "RemindID = @RemindID";

            return(await Task.Run(() => _DB.ExeSQLResult(strSQL, dict)));
        }
 /// <summary>
 /// 增加或更新一条记录(异步方式)
 /// </summary>
 /// <param name="entity">实体模型</param>
 /// <param name="IsSave">是否增加</param>
 /// <returns></returns>
 public virtual async Task <bool> AddOrUpdateAsync(RemindItemEntity entity, bool IsSave)
 {
     return(IsSave ? await AddAsync(entity) : await UpdateAsync(entity));
 }
 /// <summary>
 /// 增加或更新一条记录
 /// </summary>
 /// <param name="entity">实体模型</param>
 /// <param name="IsSave">是否增加</param>
 /// <returns></returns>
 public virtual bool AddOrUpdate(RemindItemEntity entity, bool IsSave)
 {
     return(IsSave ? Add(entity) : Update(entity));
 }