protected override object this[string index]
        {
            get
            {
                #region
                switch (index)
                {
                case "id": return(id);

                case "Objective": return(Objective);

                case "ObjectiveNum": return(ObjectiveNum);

                case "Liveness": return(Liveness);

                case "RewardsType": return(RewardsType);

                case "RewardsNum": return(RewardsNum);

                default: throw new ArgumentException(string.Format("Config_Task index[{0}] isn't exist.", index));
                }
                #endregion
            }
            set
            {
                #region
                switch (index)
                {
                case "id":
                    _id = value.ToEnum <TaskType>();
                    break;

                case "Objective":
                    _Objective = value.ToNotNullString();
                    break;

                case "ObjectiveNum":
                    _ObjectiveNum = value.ToInt();
                    break;

                case "Liveness":
                    _Liveness = value.ToInt();
                    break;

                case "RewardsType":
                    _RewardsType = value.ToEnum <TaskAwardType>();
                    break;

                case "RewardsNum":
                    _RewardsNum = value.ToNotNullString();
                    break;

                default: throw new ArgumentException(string.Format("Config_Task index[{0}] isn't exist.", index));
                }
                #endregion
            }
        }
        protected override object this[string index]
        {
            get
            {
                #region
                switch (index)
                {
                case "ID": return(ID);

                case "Time": return(Time);

                case "AwardType": return(AwardType);

                case "AwardID": return(AwardID);

                case "AwardNum": return(AwardNum);

                default: throw new ArgumentException(string.Format("Config_OnlineReward index[{0}] isn't exist.", index));
                }
                #endregion
            }
            set
            {
                #region
                switch (index)
                {
                case "ID":
                    _ID = value.ToInt();
                    break;

                case "Time":
                    _Time = value.ToInt();
                    break;

                case "AwardType":
                    _AwardType = value.ToEnum <TaskAwardType>();
                    break;

                case "AwardID":
                    _AwardID = value.ToInt();
                    break;

                case "AwardNum":
                    _AwardNum = value.ToNotNullString("0");
                    break;

                default: throw new ArgumentException(string.Format("Config_OnlineReward index[{0}] isn't exist.", index));
                }
                #endregion
            }
        }
        protected override object this[string index]
        {
            get
            {
                #region
                switch (index)
                {
                case "id": return(id);

                case "AchievementType": return(AchievementType);

                case "Achievement": return(Achievement);

                case "Objective": return(Objective);

                case "ObjectiveNum": return(ObjectiveNum);

                case "ObjectiveGrade": return(ObjectiveGrade);

                case "RewardsType": return(RewardsType);

                case "RewardsItemID": return(RewardsItemID);

                case "RewardsItemNum": return(RewardsItemNum);

                default: throw new ArgumentException(string.Format("Config_Achievement index[{0}] isn't exist.", index));
                }
                #endregion
            }
            set
            {
                #region
                switch (index)
                {
                case "id":
                    _id = value.ToInt();
                    break;

                case "AchievementType":
                    _AchievementType = value.ToEnum <AchievementType>();
                    break;

                case "Achievement":
                    _Achievement = value.ToNotNullString();
                    break;

                case "Objective":
                    _Objective = value.ToNotNullString();
                    break;

                case "ObjectiveNum":
                    _ObjectiveNum = value.ToNotNullString();
                    break;

                case "ObjectiveGrade":
                    _ObjectiveGrade = value.ToInt();
                    break;

                case "RewardsType":
                    _RewardsType = value.ToEnum <TaskAwardType>();
                    break;

                case "RewardsItemID":
                    _RewardsItemID = value.ToInt();
                    break;

                case "RewardsItemNum":
                    _RewardsItemNum = value.ToNotNullString();
                    break;

                default: throw new ArgumentException(string.Format("Config_Achievement index[{0}] isn't exist.", index));
                }
                #endregion
            }
        }
        protected override object this[string index]
        {
            get
            {
                #region
                switch (index)
                {
                case "ID": return(ID);

                case "Type": return(Type);

                case "Number": return(Number);

                case "RewardType": return(RewardType);

                case "RewardNum": return(RewardNum);

                case "AddRewardItem": return(AddRewardItem);

                case "AddRewardNum": return(AddRewardNum);

                default: throw new ArgumentException(string.Format("Config_Share index[{0}] isn't exist.", index));
                }
                #endregion
            }
            set
            {
                #region
                switch (index)
                {
                case "ID":
                    _ID = value.ToInt();
                    break;

                case "Type":
                    _Type = value.ToEnum <ShareType>();
                    break;

                case "Number":
                    _Number = value.ToInt();
                    break;

                case "RewardType":
                    _RewardType = value.ToEnum <TaskAwardType>();
                    break;

                case "RewardNum":
                    _RewardNum = value.ToNotNullString("0");
                    break;

                case "AddRewardItem":
                    _AddRewardItem = value.ToInt();
                    break;

                case "AddRewardNum":
                    _AddRewardNum = value.ToNotNullString("0");
                    break;

                default: throw new ArgumentException(string.Format("Config_Share index[{0}] isn't exist.", index));
                }
                #endregion
            }
        }