using System.Data;

using BS.Shared;

namespace BeWo.Data.Entities
{
    public class Parameter : BeWoEntityBase
    {
        public static string PropertyName_DbType = "DbType";

        public static string PropertyName_Name = "Name";

        public static string PropertyName_Type = "Type";

        private DbType _DbType;

        private string _Name;

        private QueryParameterType _Type;

        public Parameter()
        {
            this._Tid = TableID.Parameter;
        }

        public virtual DbType DbType
        {
            get
            {
                return this._DbType;
            }

            set
            {
                if (this.AreDifferent(this._DbType, value))
                {
                    this._DbType = value;
                }
            }
        }

        public virtual string Name
        {
            get
            {
                return this._Name;
            }

            set
            {
                if (this.AreDifferent(this._Name, value))
                {
                    this._Name = value;
                }
            }
        }

        public virtual QueryParameterType Type
        {
            get
            {
                return this._Type;
            }

            set
            {
                if (this.AreDifferent(this._Type, value))
                {
                    this._Type = value;
                }
            }
        }
    }
}