using System;

namespace Winson.ModelOP
{
    /// <summary>
    /// Summary description for TestDS
    /// </summary>
    public class TestDS
    {
        bool __isuseSetValue = false;
        bool __nameSetValue = false;
        bool __ageSetValue = false;
        bool __datetimeSetValue = false;
        bool __picSetValue = false;
        bool __contextSetValue = false;


        #region 成员
        
        int _id;

        public int Id
        {
            get { return _id; }
        }
        string _name;

        public string Name
        {
            get { if (_name != null && __nameSetValue)  return _name; else return null; }
            set { __nameSetValue = true; _name = value; }
        }
        int age;

        public int Age
        {
            get { if (age > 0 && __ageSetValue) return age; else return null; }
            set { __ageSetValue = true; age = value; }
        }
        DateTime _datetime;

        public DateTime Datetime
        {
            get { if (_datetime != DateTime.MaxValue && _datetime != DateTime.MinValue && __datetimeSetValue) return _datetime; else return null; }
            set { __datetimeSetValue = true; _datetime = value; }
        }
        Byte[] _pic;

        public Byte[] Pic
        {
            get { if (_pic != null && __picSetValue) return _pic; else return null; }
            set { __picSetValue = true; _pic = value; }
        }
        string _context;

        public string Context
        {
            get { if (_context.Length > 0 && __contextSetValue)  return _context; else return null; }
            set { __contextSetValue = true; _context = value; }
        }
        bool _isuse;

        public bool Isuse
        {
            get { if (__isuseSetValue) return _isuse; else return null; }
            set { __isuseSetValue = true; _isuse = value; }
        }
        int _count = 7;

        public int Count
        {
            get { return _count; }
        }
        #endregion

        //#region 成员
        //int _id;

        //public int Id
        //{
        //    get { return _id; }
        //    set { _id = value; }
        //}
        //string _name;

        //public string Name
        //{
        //    get { if (_name!=null)  return _name; else return ""; }
        //    set { _name = value; }
        //}
        //int age;

        //public int Age
        //{
        //    get { return age; }
        //    set { age = value; }
        //}
        //DateTime _datetime;

        //public DateTime Datetime
        //{
        //    get { if(_datetime!=DateTime.MaxValue && _datetime!=DateTime.MinValue) return _datetime ;else return DateTime.MaxValue; }
        //    set { _datetime = value; }
        //}
        //Byte[] _pic;

        //public Byte[] Pic
        //{
        //    get { if (_pic != null) return _pic; else return new byte[0]; }
        //    set { _pic = value; }
        //}
        //string _context;

        //public string Context
        //{
        //    get { if (_context.Length > 0)  return _context; else return ""; }
        //    set { _context = value; }
        //}
        //bool _isuse;

        //public bool Isuse
        //{
        //    get { return _isuse; }
        //    set { _isuse = value; }
        //}
        //int _count = 7;

        //public int Count
        //{
        //    get { return _count; }
        //}
        //#endregion

        //public object this[int index, int type, int maxID]
        //{
        //    get
        //    {
        //        if (type == 1)
        //        {
        //            switch (index)
        //            {
        //                case 0:
        //                    if (maxID > 0 || _id > 0)
        //                        return "id";
        //                    else
        //                        return null;
        //                case 1:
        //                    if (_name.Length > 0)
        //                        return "name";
        //                    else
        //                        return null;
        //                case 2:
        //                    if (age > 0)
        //                        return "age";
        //                    else
        //                        return null;
        //                case 3:
        //                    if (_datetime != DateTime.MaxValue)
        //                        return "datetime";
        //                    else
        //                        return null;
        //                case 4:
        //                    if (_pic != null)
        //                        return "pic";
        //                    else
        //                        return null;
        //                case 5:
        //                    if (_context.Length > 0)
        //                        return "context";
        //                    else
        //                        return null;
        //                case 6:
        //                    return "isuse";
        //                default:
        //                    return null;
        //            }
        //        }
        //        else
        //        {
        //            switch (index)
        //            {
        //                case 0:
        //                    if (maxID > 0)
        //                        return maxID;
        //                    else if (_id > 0)
        //                        return this._id;
        //                    else
        //                        return null;
        //                case 1:
        //                    if (_name.Length > 0)
        //                        return _name;
        //                    else
        //                        return null;
        //                case 2:
        //                    if (age > 0)
        //                        return age;
        //                    else
        //                        return null;
        //                case 3:
        //                    if (_datetime != DateTime.MaxValue)
        //                        return _datetime;
        //                    else
        //                        return null;
        //                case 4:
        //                    if (_pic != null)
        //                        return _pic;
        //                    else
        //                        return null;
        //                case 5:
        //                    if (_context.Length > 0)
        //                        return _context;
        //                    else
        //                        return null;
        //                case 6:
        //                    return _isuse;
        //                default:
        //                    return null;
        //            }
        //        }
        //    }

        //    set
        //    {
        //        #region 设置字段值
        //        switch (index)
        //        {
        //            case 0:
        //                this._id = Convert.ToInt32(value);
        //                break;
        //            case 1:
        //                this._name = Convert.ToString(value);
        //                break;
        //            case 2:
        //                this.age = Convert.ToInt32(value);
        //                break;
        //            case 3:
        //                this._datetime = Convert.ToDateTime(value);
        //                break;
        //            case 4:
        //                this._pic = (byte[])value;
        //                break;
        //            case 5:
        //                this._context = Convert.ToString(value);
        //                break;
        //            case 6:
        //                this._isuse = Convert.ToBoolean(value);
        //                break;
        //            default:
        //                break;
        //        }
        //        #endregion
        //    }
        //}


        public TestDS()
        {

        }
    }
}
